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

Метод assertViewIs

Метод assertViewIs применяется к ответу HTTP в тестах Laravel и проверяет, что возвращаемое представление соответствует ожидаемому имени. Первым параметром передаётся строка с именем представления. Метод доступен только при использовании тестового клиента Laravel и возвращает экземпляр ответа для цепочки проверок.

Синтаксис

<?php $this->get($uri)->assertViewIs($viewName); ?>

Пример

Давайте проверим, что главная страница использует представление 'welcome':

<?php namespace Tests\Feature; use Tests\TestCase; class PageTest extends TestCase { public function test_main_page_uses_welcome_view() { $res = $this->get('/')->assertViewIs('welcome'); } } ?>

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

null

Пример

Проверим, что страница профиля использует представление 'profile.show':

<?php namespace Tests\Feature; use Tests\TestCase; class ProfileTest extends TestCase { public function test_profile_page_uses_correct_view() { $res = $this->get('/profile') ->assertStatus(200) ->assertViewIs('profile.show'); } } ?>

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

null

Пример

Проверим, что страница списка статей возвращает представление 'articles.index', и передаёт в него данные:

<?php namespace Tests\Feature; use Tests\TestCase; use App\Models\Article; class ArticleTest extends TestCase { public function test_articles_page_returns_correct_view() { $articles = Article::factory()->count(3)->create(); $res = $this->get('/articles') ->assertViewIs('articles.index') ->assertViewHas('articles', $articles); } } ?>

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

null

Пример

Если представление не соответствует ожидаемому, тест выбрасывает исключение:

<?php namespace Tests\Feature; use Tests\TestCase; class PageTest extends TestCase { public function test_main_page_uses_correct_view() { $this->get('/')->assertViewIs('home'); } } ?>

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

"Failed asserting that the response view is [home]."

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

  • метод assertViewHas,
    который проверяет наличие данных в представлении
  • метод assertStatus,
    который проверяет HTTP-статус ответа
  • метод get,
    который выполняет GET-запрос в тестах
  • класс TestCase,
    базовый класс для всех тестов в Laravel
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить