t.me/atinfo_chat Telegram группа по автоматизации тестирования

Какой фреймворк лучше использовать для создания автотестов

jbehave
serenity
selenide
Теги: #<Tag:0x00007f9c4fe57908> #<Tag:0x00007f9c4fe577a0> #<Tag:0x00007f9c4fe57610>

(Igor Zip) #1

Просмотрел курс где описываю разные фреймворки - Selenide, Serenity, jbehave. Selenide - удобный и простой! Serenity - чуть сложнее, но я так понял что помащьнее и отчеты красивые. Jbehave - пишеш человеческим языком, но уж больно очень много описывать, слишком все запутано - зачем это вообще, зачем его придумали!? Каким фреймворком пользуетесь вы, и какие преимущества одного над другим. С каким лучше сесть разобраться и писать на нем тесты! Хочется услышать опытное мнение! Спасибо)


(Alexandr D.) #2

Миллион похожих тем.
Используйте тот, который нравится вам.


(Павел) #3

Фреймворки, которые вы перечислили, решают разные проблемы. Типичный тестовый фреймворк состоит из нескольких вещей:

  1. test runner (компонент, который определяет, как тесты будут организовываться и запускаться);
  2. компоненты для работы с приложением через API (REST/SOAP), или web UI (браузеры), возможно что-то более специфическое (базы данных, десктоп GUI итд);
  3. составление репортов;
  4. другие компоненты

Соотв. jbehave/cucumber предоставляют только п.1, ну и возможно какой-никакой репортинг. Для работы с браузером нужно подключать дополнительные компоненты.

Selenide дает вам только п.2 (обертку над webdriver для работы с браузером).

Serenity предоставляет все из вышеперечисленного. Для работы с webUI и репортов там своя имплементация, для всего остального есть интеграции (serenity-cucumber, serenity-jbehave, serenity-junit, serenity-rest-assured и прочее)


(asolntsev) #4

Это всё теория. А вот прагматичный взгляд:

  1. Test runner - это JUnit или TestNG, больше ничего не нужно.
  2. Selenide - отлично, берите.
  3. репорты составляет и Junit, и TestNG, и Jenkins. Большего не нужно. (а если ну очень хочется красоты, берите Allure)

Одним словом, берите Selenide и/или Allure, но точно не Serenity и вообще не BDD. Они только всё усложняют и не приносят никакой пользы.