Маршруты тестирования Laravel Unit - PullRequest
0 голосов
/ 06 мая 2018

Мой метод испытаний имеет:

 $this->visitRoute('route.name')->see('something');

Ответ:

There was 1 failure:

1) Tests\Unit\MyTest::testRoute
A request to [http://localhost/route.name] failed. Received status code [500].
Caused by
PDOException: SQLSTATE[HY000]: General error: 1 no such table 'tableThatExists'

НО, когда я проверяю:

$this->visit('/')

Как указано в документации Laravel, все работает, что не так?

А также, если я просто хочу проверить ответы без условия "видеть", как мне это сделать?

Если кто-нибудь знает простые базовые юнит-тесты Laravel, это также может помочь

Ответы [ 2 ]

0 голосов
/ 06 мая 2018
use Illuminate\Foundation\Testing\DatabaseMigrations;

в файле и

use DatabaseMigrations;

в классе

0 голосов
/ 06 мая 2018

Эта ошибка связана с тем, что тест приложения не находит базу данных.

Попробуйте с:
В phpunit.xml внутри тега php необходимо установить тестовую базу данных, подобную этой

<php>
    <env name="APP_ENV" value="testing"/>
    <env name="CACHE_DRIVER" value="array"/>
    <env name="SESSION_DRIVER" value="array"/>
    <env name="QUEUE_DRIVER" value="sync"/>
    <env name="DB_CONNECTION" value="sqlite"/>
    <env name="DB_DATABASE" value=":memory:"/>
</php>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...