国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

快速入門(mén)

快速入門(mén)


測(cè)試:入門(mén)指南

介紹

Laravel 天生就具有測(cè)試的基因。事實(shí)上,Laravel 默認(rèn)就支持用 PHPUnit 來(lái)做測(cè)試,并為你的應(yīng)用程序配置好了 phpunit.xml 文件??蚣苓€提供了一些便利的輔助函數(shù),讓你可以更直觀的測(cè)試你的應(yīng)用程序。

默認(rèn)情況,你的應(yīng)用 tests 目錄中包含兩個(gè)子目錄:FeatureUnit。單元測(cè)試是針對(duì)你的代碼中非常少,而且相對(duì)獨(dú)立的一部分代碼來(lái)進(jìn)行的測(cè)試。實(shí)際上,大部分單元測(cè)試都是針對(duì)單個(gè)方法進(jìn)行的。功能測(cè)試是針對(duì)大面積代碼進(jìn)行的測(cè)試,包括多個(gè)對(duì)象之間的交互,甚至是對(duì) JSON 端點(diǎn)的完整 HTTP 請(qǐng)求。

FeatureUnit 目錄中都提供一個(gè) ExampleTest.php 測(cè)試示例文件。安裝一個(gè)新的 Laravel 應(yīng)用程序之后,在命令行下運(yùn)行 phpunit 命令,即可運(yùn)行測(cè)試。

環(huán)境

在使用 phpunit 進(jìn)行測(cè)試時(shí),Laravel 將根據(jù)  phpunit.xml 文件設(shè)定的環(huán)境變量自動(dòng)將環(huán)境設(shè)置為 testing,并將 Session 及緩存以 array 的形式存儲(chǔ),也就是說(shuō)在測(cè)試時(shí)不會(huì)持久化任何 Session 或緩存數(shù)據(jù)。

你可以隨意創(chuàng)建其它必要的測(cè)試環(huán)境配置。testing 環(huán)境變量可以在 phpunit.xml 文件中修改,但是在運(yùn)行測(cè)試之前,請(qǐng)確保使用 config:clear Artisan 命令來(lái)清除配置信息的緩存!

此外,你還可以在你的項(xiàng)目根目錄下創(chuàng)建一個(gè) .env.testing 文件,在運(yùn)行單元測(cè)試,或者使用帶有 --env=testing 選項(xiàng)的 Artisan 命令時(shí), .env 文件中的變量會(huì)被這個(gè)文件覆蓋。

定義并運(yùn)行測(cè)試

可以使用 Artisan 命令 make:test 創(chuàng)建一個(gè)測(cè)試用例:

// 在 Feature 目錄下創(chuàng)建一個(gè)測(cè)試類(lèi)...php artisan make:test UserTest// 在 Unit 目錄下創(chuàng)建一個(gè)測(cè)試類(lèi)...php artisan make:test UserTest --unit

測(cè)試類(lèi)生成之后,你就可以像平常使用 PHPUnit 一樣來(lái)定義測(cè)試方法。要運(yùn)行測(cè)試只需要在終端上運(yùn)行 phpunit 命令即可:

<?php
    namespace Tests\Unit;
    use Tests\TestCase;
    use Illuminate\Foundation\Testing\RefreshDatabase;
    class ExampleTest extends TestCase{   
     /**
     * 一個(gè)基本的測(cè)試示例。
     *
     * @return void
     */   
    public function testBasicTest()  
      {      
        $this->assertTrue(true);  
       }
    }

{note} 如果要在你的測(cè)試類(lèi)中定義自己的 setUp / tearDown 方法,請(qǐng)確保調(diào)用了父類(lèi)中的 parent::setUp() / parent::tearDown() 方法。

本文章首發(fā)在 LearnKu.com 網(wǎng)站上。