пятница, 15 января 2016 г.

Как удержать UI тесты на вершине пирамиды автоматизированного тестирования

Для многих из нас UI тесты все на одно лицо. Однако, при более детальном рассмотрении, они все же отличаются друг от друга. И именно на основании этих отличий их нужно распределять на разные уровни пирамиды автоматизации тестирования.

Многие сейчас подумаю: «О чем это он?», - но именно этими мыслями я и хотел поделиться.

Вот как в итоге будет выглядеть пирамида или можно сказать мороженка автоматизированного тестирования, если все UI тесты валить в одну кучу, причем размер кучи уже будет зависеть от вашей фантазии (вафелька на картинке может быть расплющена у основания, а может быть и такая как есть):

А теперь самое интересное, за что меня могут поколотить мои коллеги.

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

А теперь вопрос:

- Кто по вашему должен на проекте заниматься написанием модульных тестов?

- Разработчики!

- А Кто по вашему должен заниматься приемочным тестированием?

– Тестировщики!

И вот что из этого следует:

Короткие модульные UI тесты должны писать UI разработчики, и для этого у них есть все инструменты, позволяющие гонять их еще не на собранном и незадеплоенном приложении. Тестировщики же должны писать эти самые end-2-end приемочные тесты, выбранные определенным образом (без излишеств) и покрывающие основные бизнес функции уже готового приложения. А то как они будут писать эти тесты, будет зависеть уже от выбранного инструмента, написанного фреймворка и опыта тестировщика автоматизатора. Только в этом случае вы получите именно пирамидку, а не мороженку автоматизированного тестирования.

Таким образом мы получим сравнительно небольшое количество UI тестов, написанных и поддерживаемых тестировщиками, что даст им возможность больше времени уделять именно тестированию, а не кодированию тестов.

Ну а теперь, вы можете «бросать в меня грязью» ну или поставить Like. :)

Комментариев нет:

Условия копирования публикаций:

Все публикации в данном блоге являются частной собственностью авторов. Любое копирование информации допускается только при условии указания имени автора и активной ссылки на источник.