我想學習如何使用phpunit和laravel進行測試。當使用phpunit
命令開始測試,我得到一個警告:Phpunit測試給出警告沒有在類中找到的測試
There was 1 failure:
1) Warning
No tests found in class "PostsTest".
FAILURES!
Tests: 2, Assertions: 1, Failures:
我測試的類名和文件名匹配。我已閱讀其他有關不匹配名稱的問題。我的文件名是PostsTest.php
和我的測試文件:
class PostsTest extends ApiTester {
public function it_fetches_posts()
{
$this->times(5)->makePost();
$this->getJson('api/v1/posts');
$this->assertResponseOk();
}
private function makePost($postFields=[])
{
$post = array_merge([
'title' => $this->fake->sentence,
'content' => $this->fake->paragragraph
], $postFields);
while($this->times --)Post::create($post);
}
}
如果必要的話我ApiTester:
use Faker\Factory as Faker;
class ApiTester extends TestCase {
protected $fake;
protected $times = 1;
function __construct($faker)
{
$this->fake = Faker::create();
}
}
我沒有任何線索錯誤所在。 Laravel或我的本地phpunit設置或其他任何東西。任何幫助表示讚賞。
謝謝。
你看過手冊嗎? – hek2mgl
我已閱讀laravel手冊。我正在使用laracasts教程。我是否缺少其他手冊? – ytsejam
我明白你的意思了。在tut視頻中,我看到這個函數的名字被這樣使用,它正在工作。我沒有猜測函數名稱應該是「testItFetchesPosts」。我認爲這只是一個示例名稱。 – ytsejam