РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1111 of 1361 menu

Метод assertResponseStatusCodeSame

Метод assertResponseStatusCodeSame относится к классу KernelBrowser и проверяет, что код состояния HTTP-ответа равен ожидаемому значению. Первым параметром передаётся ожидаемый код ответа, вторым (необязательным) - сообщение об ошибке, которое выводится при несовпадении. Метод удобен для проверки ответов сервера в функциональных тестах, когда важно убедиться, что страница вернула конкретный статус, например 200, 404 или 500.

Синтаксис

$client->assertResponseStatusCodeSame(int $expectedCode, string $message = '')

Пример

Давайте создадим клиент и проверим, что главная страница возвращает код 200:

<?php namespace AppTestsController; use SymfonyBundleFrameworkBundleTestWebTestCase; class ArticleControllerTest extends WebTestCase { public function testIndexStatusCode(): void { $client = static::createClient(); $client->request('GET', '/'); $client->assertResponseStatusCodeSame(200); } } ?>

Результат выполнения кода:

"OK"

Пример

Давайте проверим, что несуществующая страница возвращает код 404:

<?php namespace AppTestsController; use SymfonyBundleFrameworkBundleTestWebTestCase; class ArticleControllerTest extends WebTestCase { public function testNotFoundStatusCode(): void { $client = static::createClient(); $client->request('GET', '/not-found'); $client->assertResponseStatusCodeSame(404); } } ?>

Результат выполнения кода:

"OK"

Пример

Давайте передадим собственное сообщение об ошибке, которое будет выведено при несовпадении кода ответа:

<?php namespace AppTestsController; use SymfonyBundleFrameworkBundleTestWebTestCase; class ArticleControllerTest extends WebTestCase { public function testStatusCodeWithMessage(): void { $client = static::createClient(); $client->request('GET', '/article'); $client->assertResponseStatusCodeSame( 200, 'The article page should return 200.' ); } } ?>

Результат выполнения кода:

"OK"

Пример

Давайте проверим код ответа после отправки формы методом POST и убедимся, что сервер вернул 201:

<?php namespace AppTestsController; use SymfonyBundleFrameworkBundleTestWebTestCase; class ArticleControllerTest extends WebTestCase { public function testCreateStatusCode(): void { $client = static::createClient(); $client->request('POST', '/article/create', [ 'title' => 'abcde', 'body' => 'hello', ]); $client->assertResponseStatusCodeSame(201); } } ?>

Результат выполнения кода:

"OK"

Смотрите также

  • метод assertResponseIsSuccessful,
    который проверяет успешность ответа
  • метод assertResponseRedirects,
    который проверяет редирект ответа
  • метод getResponse,
    который возвращает объект ответа
  • класс WebTestCase,
    который используется для функциональных тестов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить