В настоящее время я оцениваю Codecept JS как альтернативу нашему тяжелому стеку Java / Selenium / Cucumber. Я организовал проект следующим образом:
- BDD (все начинается с файла объектов).
- Определения шагов существуют для каждого из шагов в файлах объектов.
- В определениях шагов используются методы внутри соответствующего объекта страницы.
Когда я запускаю пример проекта, я получаю вывод, подобный следующему:
USER REGISTRATION --
As someone who is not a member
I would like the ability to sign up
So that I can enjoy the benefits of Widget XYZ's services
Register account from the signed out homepage
Given I open the homepage
signedOutHomePage: open
✔ OK in 3230ms
Вышеприведенный тест выполняется с помощью:
npx codeceptjs run --steps
Можно ли подавить вывод объекта Page (т. е. строка signedOutHomePage: open
не отображается)?
UPDATE (другой вопрос ): Должен ли я даже использовать PageObjects, если я использую BDD?