Метод тестирования, который необходимо войти - PullRequest
0 голосов
/ 23 марта 2020

Я хочу протестировать какой-то метод, например user (метод требует входа в систему user).

$user = User::find(1);
$response = $this->actingAs($user)->json('POST', '/store/post', [
            'title' => 'Hello World',
            'description' => 'Hello World. We are Anonymous.',
            'user_id' => 1
]);

$response
    ->assertStatus(201)
    ->assertJson([
        'created' => true,
    ]);

У меня есть эта ошибка (я не знаю, как я могу добавить все ошибки, поэтому я показываю части этого ):

1) Tests\Feature\ExampleTest::testBasicExample

Illuminate\Database\QueryException: could not find driver (SQL: PRAGMA foreign_keys = ON;)
//...
Caused by
Doctrine\DBAL\Driver\PDOException: could not find driver
//...
Caused by
PDOException: could not find driver

У меня та же проблема, если я попытался использовать Factory как в документации. Как я могу решить мою проблему?

Ответы [ 2 ]

0 голосов
/ 23 марта 2020

Я полагаю, вы используете sqlite для насмешки над базой данных в PHPUnit В случае php5

sudo apt-get install php5-sqlite

или в случае php7

sudo apt-get install php7-sqlite

чем перезагрузить сервер apache

sudo service apache2 restart
0 голосов
/ 23 марта 2020

Я думаю, что вы должны установить следующий пакет в вашем приложении. попробуйте запустить

  composer update

  composer require doctrine/dbal

Возможно, вам также потребуется установить расширение php - mysql.

попробуйте запустить

sudo apt-get install php-mysql.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...