Реализовать две разные проверки в одном тесте или сделать в разных тестах?

Здравствуйте.

Есть реализованный автотест - заполнение полей, отправка заявки и проверка, что заявка дошла.
Требуется реализовать проверку заполнение datalayer(для аналитики). В datalayer собирается информация о заявке и о статусе отправки заявки. Статус может быть разный: успешный, не успешный, в очереди.
Вижу два варианта. Первый - вписать новый тест в существующий, второй - написать отдельный тест.
В реализации в одном тесте есть большой минус - если упадет функционал datalayer то все автотесты будут красными, не зависимо успешно отправилась заявка или нет. Будет сложно анализировать. И так же наоборот, если функционал отправки заявки будет не работать, все тесты будут красными, хотя datalayer будет работать.
В написание отдельного автотесты присутствует минус - это время проверки. Все заявки отправляются в течение 2 часов и если еще отдельно отправлять заявки для datalayer то это дополнительное время.

Может есть еще какой то вариант? :slight_smile:

Может можно попросить сделать “отправляются в течение 2 часов” конфигурируемым параметром и изменить на 1 минуту?

Есть много тарифов. Штук 300 и они по очереди отправляются. Все это дело занимает около 2 часов. К сожалению, не получится сделать из 2 часов 1 минуту. Был бы очень рад )

Что если исполтзовать softAssert на dataLayer и указать там в случае падения какойто лог что мол упал тест изза dataLayer. Тогда ваш тест будет доходить до конца и вы сможете проверить успешную отправку. Также можно покопаться и изобразить listener в testNg который чекает из-за чего упал тест и если вам нужно сделаeт тест зеленым если упал dataLayer

Если буду красить в зеленый цвет то не смогу понят, что там ошибка. Пользуюсь allure. Была бы возможность еще дополнительный статус добавить туда, другого цвета, было бы здорово. Например - падает datalayer, будет синий цвет, а если отправка заявки то красный. Только такие мысли приходят в голову.

Или может есть возможность у allura для одного прогона теста выводить два результат, как будто разные тесты были запущены? Нигде такого не видел, может кто знает.

Не очень понятно чего хотите добиться. Возможно, что решение лежит в другой плоскости?

Я бы использовал softAssert для вашего dataLayer который при падении не обрывал тест а шел дальше и отправлял форму, но при этом выдавал месседж что упал именно dataLayer. Затем в аллюре тест был бы красный но вы бы видели причину падения. Возможно, если вы укажете что вы используете для автоматизации то найдутся еще какието решения.
На нашем проекте есть кейс где мы выполняем плетеж, но при этом еще на одном из скринов проверяем много разных элементов, а затем непосредственно выполняем платеж, так вот softAssert выручает тем что мы доводим тест до конца даже если один из жлементов на скрине не верно отображается, а в аллюре потом сразу види что ошибка была именно на скрине, а не в самом функционале

1 лайк

это 2 разных теста
1 UI
2 API-BE

1 лайк

@Vladislav_Sobol @Mihail_Bratuhin
Спасибо. Решил раздельно сделать. Иначе с отчетом не очень удобно будет работать.
Решили, что не по всем тарифам будем прогонять, по одному из каждой категории.