Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

Как можно выстроить структуру тестов на codeception?

codeception
java
webdriver
php
testng
selenium
Теги: #<Tag:0x00007fedbc66d490> #<Tag:0x00007fedbc66d300> #<Tag:0x00007fedbc66d198> #<Tag:0x00007fedbc66d008> #<Tag:0x00007fedbc66ce50> #<Tag:0x00007fedbc66ccc0>

(Anna Butorina) #1

Начинаю знакомиться с тестами на codeception. До этого писала тесты на Java.
Появился следующий вопрос: как выстроить очередность тестов?

На Java это реализовывала через TestNG:

  1. с помощью xml файлов-сьютов, в которых можно прописать пакет, из которого будут выполнятся тесты, исключить неугодные, выстроить очередность необходимых через dependencies и прочее.
  2. через аннотации. Зависимости, приоритет.

Нашла, что зависимости в codeception можно выставить с помощью аннотаций before/after, depends.

Интересует следующее:

  1. Есть ли для codeception возможность задавать последовательность тестов чем-то подобным как xml-файлов в Java, какой-нибудь фреймворк или…?
  2. В testNG есть ещё такая штука как alwaysRun, с помощью которой можно было запустить зависимый тест даже в случае падения чего-либо выше. Есть ли что-то подобное для codeception?

(Michael Bodnarchuk) #2
  1. Да, в Codeception принцип похожий :slight_smile:

На сколько я знаю, большинство людей не заморачивается и просто сортирует тесты по названиям. Но есть и механизм указания очередности через аннотации:

https://codeception.com/docs/07-AdvancedUsage#Dependencies

Можно указывать также тесты из других файлов в формате: ModeratorCest:login

  1. Странный механизм. Не совсем понимаю зачем такая фича нужна :confused:

(Anna Butorina) #3

Спасибо за ответ))
На счет непонятной фичи - бывали ситуации, когда куча железно-завязанные через dependencies тестов, но необходимо, чтобы один из них выполнялся даже при падении предшествующих, сортировка по названиям практически не использовалась. Но подобная штука (alwaysRun) была нужна не часто.