Код состояния тестирования ожидает 500 вместо 200 - PullRequest
0 голосов
/ 12 июня 2018

Я пишу свои первые тесты с Symfony 4.1, и у меня возникла странная проблема.Тест должен убедиться, что конечная точка возвращает статус 200:

public function testFetchTaskEndpointStatusCode200()
{
    $client = static::createClient();
    $client->request("GET", "/tasks");

    $this->assertEquals(200, $client->getResponse()->getStatusCode());
}

Затем конечная точка запускает следующий метод:

/**
 * @Route("/tasks")
 * @Method("GET")
 */
public function fetchAction()
{
    $repository = $this->getDoctrine()->getRepository(Task::class);
    $tasks = $repository->findAll();

    return $this->json([
        'tasks' => $tasks
    ]);
}

Используя программное обеспечение Insomnia и через браузер, я вижу возвращенныестатус 200, но при выполнении теста:

Не удалось утверждать, что 500 соответствует ожидаемому 200.

Почему?

Ответы [ 2 ]

0 голосов
/ 12 июня 2018

Добавление

<phpunit>
    ...
    <!-- define your env variables for the test env here -->
    <env name="DATABASE_URL" value="mysql://username:password@127.0.0.1:3306/database" />
</phpunit>

к phpunit.xml.dist решило это.

0 голосов
/ 12 июня 2018

Во время тестирования возникает некоторая ошибка в коде на стороне вашего сервера, следовательно, код ошибки 500. Поскольку мы не можем увидеть ваш тестовый набор и настройку, нам будет сложно вести вас

...