PHPUnit - Zend Framework 3 - тестирование заглушек, которые перенаправляют

Я пытаюсь написать тестовые примеры phpunit, которые могут проверить функциональность моего сайта, например, "Зарегистрироваться и войти".

Я изо всех сил пытаюсь написать эти тестовые примеры phpunit за последние несколько дней. Код уже написан, и я предполагаю написать тестовые сценарии phpunit для них. Для этого я реализовал код, приведенный ниже

$this->getRequest()
    ->setMethod('POST')
    ->setPost(new Parameters($_POST));
    $this->dispatch('/default/register');
    $this->assertModuleName('default');

    //assertActionName
    $this->assertResponseStatusCode(200);
    $this->assertControllerName(MyDefaultController::class);
    $this->assertControllerClass('MyDefaultController');
    $this->assertActionName('register');
    $this->assertMatchedRouteName('register')

Я нахожу разницу в поведении кода в браузере (где он работает просто отлично) и в случае с phpunit. В случае phpunit я получаю ответ 303 и регистрация не происходит. Когда я проверил далее код, я обнаружил, что Zend Framework использует метод $prg для внутренних перенаправлений. Так что я получаю ответ в моем случае phpunit сразу после первого перенаправления. И так код статуса = 303 но регистрация не происходит.

С другой стороны, браузер обрабатывает это правильно и выполняет перенаправление, и регистрация работает отлично.

Как я могу достичь того же результата для функций, которые перенаправляют внутренние URL-адреса, такие как Регистрация / Вход в случае phpunit?

0 ответов

Другие вопросы по тегам