Добрый день :)
Вообщем сижу тут пишу тесты и заметил странное различие в синтаксисе. Или я снова что-то не вижу в документации.
Короче говоря есть такие тесты.
namespace Tests\Feature;
use Tests\TestCase;
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;
class ThreadsTest extends TestCase
{
use DatabaseMigrations;
public function testA_user_can_view_all_threads()
{
$thread = factory('App\Thread')->create();
$response = $this->get('/threads');
$response->assertSee($thread->title);
}
function testA_user_can_read_a_single_thread()
{
$thread = factory('App\Thread')->create();
$responce = $this->get('/threads/'. $thread->id);
$responce->assertSee($thread->title);
}
function testNew_test()
{
$thread = factory('App\Thread')->create();
$responce = $this->get('/thread');
$responce->assertStatus(200);
}
}
PHPUnit 5.7.20 by Sebastian Bergmann and contributors.
.... 4 / 4 (100%)
Time: 1.81 seconds, Memory: 16.00MB
OK (4 tests, 4 assertions)
Название функция я тут пишу с префиксом test как написано в документации.
При запуске phpunit тесты проходят все 3 успешно как и должны.
Но на Ларакасте пишут методы без префикса тест. То есть так:
<?php
namespace Tests\Feature;
use Tests\TestCase;
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;
class ThreadsTest extends TestCase
{
use DatabaseMigrations;
public function a_user_can_view_all_threads()
{
$thread = factory('App\Thread')->create();
$response = $this->get('/threads');
$response->assertSee($thread->title);
}
function a_user_can_read_a_single_thread()
{
$thread = factory('App\Thread')->create();
$responce = $this->get('/threads/'. $thread->id);
$responce->assertSee($thread->title);
}
function new_test()
{
$thread = factory('App\Thread')->create();
$responce = $this->get('/threads');
$responce->assertStatus(200);
}
}
PHPUnit 5.7.20 by Sebastian Bergmann and contributors.
W. 2 / 2 (100%)
Time: 652 ms, Memory: 8.00MB
There was 1 warning:
1) Warning
No tests found in class "Tests\Feature\ThreadsTest".
WARNINGS!
Tests: 2, Assertions: 1, Warnings: 1.
И у него все работает. А у меня не может найти его..
Также меня смущает количество тестов, почему их 4 ? А во втором варианте всего 2...