Для многих из нас UI тесты все на одно лицо. Однако, при более детальном рассмотрении, они все же отличаются друг от друга. И именно на основании этих отличий их нужно распределять на разные уровни пирамиды автоматизации тестирования.
Многие сейчас подумаю: «О чем это он?», - но именно этими мыслями я и хотел поделиться.
Вот как в итоге будет выглядеть пирамида или можно сказать мороженка автоматизированного тестирования, если все UI тесты валить в одну кучу, причем размер кучи уже будет зависеть от вашей фантазии (вафелька на картинке может быть расплющена у основания, а может быть и такая как есть):
А теперь самое интересное, за что меня могут поколотить мои коллеги.
Итак, у нас есть UI тесты короткие и быстрые, а есть долгие и упорные (назовем их end-2-end сценарии). Первые обычно не проверяют какую-то серьезную бизнес логику, только точечно небольшие визуальные фишки на странице, вторые же наоборот, проверяют бизнес логику через UI, имитируя действия пользователя. В связи с этим, по уровню их применения короткие можно отнести к модульным UI тестам, а длинные - к супер интеграционным тестам, применяемым в основном при приемочном тестировании.
А теперь вопрос:
- Кто по вашему должен на проекте заниматься написанием модульных тестов?
- Разработчики!
- А Кто по вашему должен заниматься приемочным тестированием?
– Тестировщики!
И вот что из этого следует:
Короткие модульные UI тесты должны писать UI разработчики, и для этого у них есть все инструменты, позволяющие гонять их еще не на собранном и незадеплоенном приложении. Тестировщики же должны писать эти самые end-2-end приемочные тесты, выбранные определенным образом (без излишеств) и покрывающие основные бизнес функции уже готового приложения. А то как они будут писать эти тесты, будет зависеть уже от выбранного инструмента, написанного фреймворка и опыта тестировщика автоматизатора. Только в этом случае вы получите именно пирамидку, а не мороженку автоматизированного тестирования.
Таким образом мы получим сравнительно небольшое количество UI тестов, написанных и поддерживаемых тестировщиками, что даст им возможность больше времени уделять именно тестированию, а не кодированию тестов.
Ну а теперь, вы можете «бросать в меня грязью» ну или поставить Like. :)
Комментариев нет:
Отправить комментарий