2016-08-08 12 views
9

phpunitコマンドを使用するLaravelはプロジェクトですべての単体テストを実行します。 Laravel 5.1でユニットテストを実行するにはどうすればよいですか?laravelのテストスイートからユニットテストを1つだけ実行する

私のテストスイートからtestFindTokenを実行したいだけです。

<?php 

use Mockery as m; 
use App\Models\AccessToken; 
use Illuminate\Foundation\Testing\WithoutMiddleware; 

class AccessTokenRepositoryTest extends TestCase 
{ 
    use WithoutMiddleware; 

    public function setUp() 
    { 
     parent::setUp(); 

     $this->accessToken = factory(AccessToken::class); 
     $this->repo_AccessToken = app()->make('App\Repositories\AccessTokenRepository'); 
    } 

    public function testFindToken() 
    { 
     $model = $this->accessToken->make(); 
     $model->save(); 
     $model_accessToken = $this->repo_AccessToken->findToken($model->id); 
     $this->assertInstanceOf(Illuminate\Database\Eloquent\Model::class, $model); 
     $this->assertNotNull(true, $model_accessToken); 
    }  
} 

答えて

16

このコマンドを使用して、テストスイートから特定のテストを実行します。

phpunit --filter {TestMethodName} 

、あなたのファイルについてより具体的にしたい場合は、2番目の引数としてファイルパスを渡す

phpunit --filter {TestMethodName} {FilePath} 

例:

phpunit --filter testExample path/to/filename.php 

注:

testSaveとanotheという名前の関数がある場合R機能はtestSaveAndDropという名前で、あなたはとても

phpunit --filter testSave 

よう--filtertestSaveを渡し、それはまた、基本的に、サブストリングの一致でtestSaveAndDroptestSave*

で始まる任意の他の機能を実行します。あなたが他のすべてのメソッドを除外したい場合はそのように

phpunit --filter '/testSave$/' 
+1

グレートのような文字列トークンの$エンドを使用! ありがとうZayn :) –

関連する問題