Я пытаюсь создать тест для моего laravel 5.2
проект, который будет проверять страницу регистрации в контроллере ресурсов отдыха. Когда я проверяю это вручную с точным вводом моего теста, все работает, но когда я проверяю это с phpunit
Я перенаправлен на страницу с ошибкой, из-за которой моя страница не работает. Ошибка, однако, отображает ошибку ошибки assert, а не ту, которая есть на странице ошибки, и, следовательно, не показывает, почему тест не пройден. Как я могу это увидеть?
Прецедент:
class registerTest extends TestCase
{
use WithoutMiddleware;
public function testRegisterCompanyCorrectly()
{
$this->actAsAdmin();
$this->visit('/Companies/create')
->type('testCompany', 'CName')
->type('www.testCompany.com', 'CUrl')
->type('[email protected]', 'Mail')
->type('John Doe', 'Name')
->type('Keith Richards', 'Password')
->type('Keith Richards', 'CPassword')
->press('Registreren')
->seePageIs('/Companies/3')
;
}
private function actAsAdmin()
{
$user = User::find(1);
$this->actingAs($user);
}
}'
PHPUnit ошибка:
There was 1 failure:
1) registerTest::testRegisterCompanyCorrectly
Did not land on expected page [http://localhost/Companies/3].
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'http://localhost/Companies/3'
+'http://localhost/Companies'
C:\Users\Stefan\Documents\producten\Applicatie\vendor\laravel\framework\src\Illuminate\Foundation\Testing\Concerns\InteractsWithPages.php:170
C:\Users\Stefan\Documents\producten\Applicatie\tests\registerTest.php:34
C:\xampp\php\pear\PHPUnit\TextUI\Command.php:176
C:\xampp\php\pear\PHPUnit\TextUI\Command.php:129
FAILURES!
Tests: 5, Assertions: 14, Failures: 1.
Одним из способов изучения ошибки является активация отчетов об ошибках для Illuminate\Foundation\Validation\ValidationException
в вашем app/Exceptions/Handler.php
,
protected $dontReport = [
// ValidationException::class,
];
Если вы снова запустите тест, в вашем файле журнала должна быть трассировка стека.
Других решений пока нет …