Рассмотрим реализацию теста, который подтверждает (проверяет) переадресацию пользователя на определённый URL.
На самом деле нам не нужно проверять, что пользователь перешёл на целевой URL. Задача веб-сервера заключается в том, чтобы отправить клиенту верный http-ответ с корректным заголовком и правильным статусом.
Далее уже клиент решает, переходить ему по этому URL или нет.
Пример конфигурации rest.suite.yml
actor: RestTester
modules:
enabled:
- REST:
depends: PhpBrowser
url: http://адрес-сервера
Пример автоматической проверки
class RedirectCest{
public function autodiscoverRedirect(RestTester $I) {
$I->stopFollowingRedirects(); // запрещаем переходить по URL, чтобы отследить ответ сервера
$I->sendGET('/autodiscover/autodiscover.xml'); // делаем запрос
$I->seeResponseCodeIs(302); // Проверяем код ответа (302 или 301)
$I->seeHttpHeader('Location', 'https://vnytve.ru'); // Проверяем целевой URL для клиента
}
}
Таким образом мы убеждаемся в присутствии переадресации при определённом запросе пользователя на веб-сервер.