2016-08-08 26 views
9

Sử dụng lệnh phpunit Laravel sẽ chạy tất cả các kiểm tra đơn vị trong dự án của chúng tôi. Làm thế nào để chạy một hoặc Kiểm tra Đơn vị cụ thể trong Laravel 5.1?Chỉ chạy thử nghiệm một đơn vị từ một bộ thử nghiệm trong laravel

Tôi chỉ muốn chạy testFindToken từ bộ thử nghiệm của mình.

<?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); 
    }  
} 

Trả lời

16

Sử dụng lệnh này để chạy thử nghiệm cụ thể từ bộ thử nghiệm của bạn.

phpunit --filter {TestMethodName} 

Nếu bạn muốn trở thành cụ thể hơn về tập tin của bạn sau đó vượt qua các đường dẫn tập tin như một đối số thứ hai

phpunit --filter {TestMethodName} {FilePath} 

Ví dụ:

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

Lưu ý:

Nếu bạn có hàm có tên là testSave và anothe chức năng r tên testSaveAndDrop và bạn vượt qua testSave đến --filter như vậy

phpunit --filter testSave 

nó cũng sẽ chạy testSaveAndDrop và bất kỳ chức năng khác mà bắt đầu với testSave*

nó về cơ bản là một trận đấu phụ chuỗi. Nếu bạn muốn loại trừ tất cả các phương thức khác, hãy sử dụng $ cuối mã thông báo chuỗi như vậy

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

Tuyệt vời! Cảm ơn Zayn :) –

Các vấn đề liên quan