В этой статье хочу рассмотреть некоторые способы написания сценариев в Vanessa automation, которые использую в своей работе. Они помогут с анализом Allure отчета и сделать работу с дефектами немного проще.  

1) Статусы сценариев в Allure и как их можно использовать.

В Allure предусмотрены следующие статусы для сценариев:

  • Failed

  • Broken

  • Passed

  • Skipped

  • Unknown

Эти статусы можно увидеть на вкладке Suites, Graphs и др.

Статусы сценариев
Статусы сценариев

Но, по умолчанию в Vanessa-automation каждый шаг может быть либо выполнен, либо упасть в ошибку. Получается, что всего в отчете будет всего 2 статуса у сценариев (Passed и Failed). Что конечно хорошо - но, можно сделать лучше. Для этого будем использовать другие статусы (Skipped и Broken). Но, для их работы необходимо применить условия.

Предлагаю, начать со статуса Skipped (Пропущенный). По своей сути - он означает, что сценарий не выполнялся. Т.е. при старте сценария сразу было понятно, что его выполнить невозможно по определенным причинам.

Как этот статус может пригодится?
К примеру, возьмем документ (Отпуск) и его печатную форму. Создадим 2 сценария - первый по проведению документа Отпуск, а второй - по проверке печатной формы. Очевидно, что если первый сценарий будет успешно выполнен, то и второй сценарий сможет отработать. Но, если первый сценарий будет выполнен с ошибками - то проверка второго не будет иметь никакого смысла, т.к. документ (Отпуск) не был создан в системе.

Для реализации этой проверки можно использовать глобальную переменную, которая будет создаваться в первом сценарии при проведении документа. А во втором будет проверяться существование этой переменной. Получиться, примерно следующий фрагмент сценария.

Пример сценария
Пример сценария

В итоге:

Если первый сценарий не будет выполнен - то не создастся глобальная переменная "ГлобальнаяСсылкаНаДокумент" и будет выполнено условие (Если не существует переменная ...).
И выполнение сценария закончится на строке (И я останавливаю выполнение сценария "Skipped"). В итоге в отчете у нас будет один поломанный сценарий (Failed) и второй (Skipped). Думаю, что это лучше, чем 2 сценария в статусе (Failed).



Теперь рассмотрим статус Broken (Поломанный). Его можно использовать в шагах при заполнении каких-либо данных. К примеру, заполнение данных в документе из справочников. Можно рассмотреть следующие шаги в сценарии:

Фрагмент сценария
Фрагмент сценария

Заполняется поле с именем "Склад" - выбор происходит из справочника. Для этого, мы ищем нужный элемент по коду "000003977". И если получится, что такой элемент не будет найден - то выполнить условие (Если в таблице "Склады" количество строк "меньше" 1 Тогда) - и выполнение сценария будет остановлено по команде (И я останавливаю выполнение сценария "Broken").
С одной стороны можно сказать, что в данном случае статус "Failed" вполне бы подошел. Но, с другой стороны это может быть и не ошибка - т.к. данный элемент мог быть удален из базы. И если поменять его на другой - то сценарий будет выполняться без ошибок.

2) Группировки и их удобство.

Думаю, что будет лишним рассказывать - о группировкам. Лучше сразу рассмотрим, как их можно использовать. К примеру - Группировку сценариев (Эпик, Фича и История). Она выполняется с помощью таких шагов:

Группировка сценариев
Группировка сценариев

Получается что в Allure отчете сценарии будут разбиты на группы. Чтобы это увидеть - откройте вкладку Behaviors и вы увидите эти группы.

Группы сценариев в Allure
Группы сценариев в Allure

Всего можно сделать три таких уровня. Если у вас много сценариев - то, этот простой способ поможет их структурировать на большие группы группы (Smoke, Regress и др.).

И еще можно использовать группировку шагов в сценарии. Это тоже довольно удобно - можно разбить сценарий на логические части. И в Allure отчете шаги тоже будут сгруппированы на эти же части.

Сценарий в Vanessa Automation
Сценарий в Vanessa Automation
Отчет о выполнении сценария в Allure
Отчет о выполнении сценария в Allure

3) Использование ссылок на документы и справочники:

С их помощью можно сразу открыть нужный элемент (документ или справочник). Как я описывал выше в п. 1 возьмем документ Отпуск и его печатную форму. Допустим у нас будет ошибка в печатной форме. И как раз ссылка поможет сразу открыть нужный документ.

Для этого в сценарии используем следующий шаг:
(И я устанавливаю описание сценария для отчета Allure 'Ссылка: $$ГлобальнаяСсылка$$')

Он, позволит перенести данную ссылку в отчет в группу Description.

Description в сценарии
Description в сценарии

И далее в 1Ске вызываем форму перехода по ссылке Shift + F11. И сразу открывается нужный документ

Форма перехода по ссылке
Форма перехода по ссылке

Сам фрагмент кода получается примерно таким:

Фрагмент сценария
Фрагмент сценария

Далее этот шаг (И я устанавливаю описание сценария для отчета Allure) можно использовать и в других сценариях - т.к. ссылка глобальная. Думаю, что и любую другую необходимую информацию можно выводить в отчет.

На этом все - спасибо за внимание! Если есть какие-либо вопросы или предложения, или у вас есть еще какие-нибудь интересные наработки - то пишите.

Комментарии (0)