Метод assertSelectorTextSame
Метод assertSelectorTextSame относится к классу
WebTestCase и используется для точной проверки
текстового содержимого HTML-элемента. Первым параметром
передаётся CSS-селектор, вторым - ожидаемая строка.
Если текст внутри элемента не совпадает с указанной
строкой (с учётом регистра и пробелов), тест завершится
ошибкой.
Синтаксис
assertSelectorTextSame(string $selector, string $text)
Пример
Давайте создадим тест, который проверяет, что
заголовок h1 содержит текст 'hello':
<?php
namespace App\Tests\Controller;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
class ArticleControllerTest extends WebTestCase
{
public function testIndex(): void
{
$client = static::createClient();
$crawler = $client->request('GET', '/');
$this->assertSelectorTextSame('h1', 'hello');
}
}
?>
Если на странице есть элемент h1 с текстом
'hello', тест пройдёт успешно. В противном
случае будет выброшено исключение с сообщением о
несовпадении текста.
Пример
Давайте проверим текст внутри элемента с классом
.article-title:
<?php
namespace App\Tests\Controller;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
class ArticleControllerTest extends WebTestCase
{
public function testArticleTitle(): void
{
$client = static::createClient();
$crawler = $client->request('GET', '/article');
$this->assertSelectorTextSame('.article-title', 'article');
}
}
?>
Результат выполнения теста при успешном совпадении:
OK (1 test, 1 assertion)
Смотрите также
-
метод
assertSelectorTextContains,
который проверяет наличие подстроки в тексте элемента -
метод
assertSelectorTextNotContains,
который проверяет отсутствие подстроки в тексте элемента -
метод
assertSelectorExists,
который проверяет наличие элемента на странице -
класс
WebTestCase,
который предоставляет методы для функционального тестирования