The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Test::BDD::Cucumber::Definitions::HTTP::Ru - Шаги на русском языке для работы с веб-ресурсами по протоколу HTTP

SYNOPSIS

В файле features/step_definitions/http_steps.pl:

    #!/usr/bin/perl

    use strict;
    use warnings;
    use utf8;
    use open qw(:std :utf8);

    use Test::BDD::Cucumber::Definitions::HTTP::Ru;

В файле features/http.feature:

    Feature: HTTP (Ru)
        Проверка веб-ресурсов по протоколу HTTP

    Scenario: Загрузка страницы
        When HTTP-запрос "GET" отправлен на "http://metacpan.org"
        Then код HTTP-ответа равен "200"

ШАГИ

Формирование запроса

Задать любой заголовок запроса с любым значением:

    Given заголовок HTTP-запроса "User-Agent" установлен в значение "TBCD"

Использовать в запросе данные произвольного вида и размера (предполагается отправка POST-запросом):

    Given тело HTTP-запроса заполнено данными
        """
        какие-то
        данные
        любого вида
        """

Отправка запроса

Отправить запрос любым HTTP-методом на любой URL (внутри URL можно использовать переменные окружения):

    When HTTP-запрос "GET" отправлен на "http://${TEST_HOST}/index.html"

Проверка ответа

Проверить код ответа:

    Then код HTTP-ответа равен "200"

Проверить любой заголовок ответа на точное соответствие значению:

    Then заголовок HTTP-ответа "Server" равен "Nginx"

Проверить любой заголовок ответа на совпадение с регулярным выражением:

    Then заголовок HTTP-ответа "Content-Type" совпадает с "text/*"

Проверить содержимое ответа на точное соответствие значению:

    Then содержимое HTTP-ответа равно "42"

Проверить содержимое ответа на совпадение с регулярным выражением:

    Then содержимое HTTP-ответа совпадает с "<title>.+</title>"

AUTHOR

Mikhail Ivanov <m.ivanych@gmail.com>

LICENSE AND COPYRIGHT

Copyright 2018 Mikhail Ivanov.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.