Нужно ли автоматическое тестирование UI мобильных приложений? Как и кто его должен разрабатывать и поддерживать?
Нужно ли автоматическое тестирование UI мобильных приложений? Как и кто его должен разрабатывать и поддерживать?
Нужно ли автоматическое тестирование?
Все зависит от специфики проекта и компании. Если в компании нет опыта автоматизации, а проект планируется на месяц — то времени и средств в автоматизацию вы вложите больше, чем получите преимуществ.
Перед принятием решения, обозначьте цели. Цель «потому что это модно, круто и все так делают» не пойдет. Скорее «Выигрыш по времени и экономия ресурсов за счет автоматизации рутинных тестов», «Заказчик настаивает на pixel perfect, вручную его делать на 5 устройствах с 30 экранами нецелесообразно».
Затем посчитайте:
Целесообразность автоматизации = (польза - текущие затраты) * количество билдов - капитальные затраты
Автоматизация выгодна для длительных проектов, когда часто собираются билды. Если вы уже наладили автоматизацию одного проекта, автоматизация следующих будет выгоднее, капитальные затраты уже вложены.
Мы, например, решили, что автоматизация нам нужна для ускорения приемки билдов, но внедрять ее в свободное от основного тестирования время. Автоматизировать будем только смоук-тесты и снятие скриншотов на всех экранах.
Нужна ли автоматизация именно UI мобильных приложений?
Если на предыдущий вопрос вы ответили - да, то автоматизируйте и UI-тестирование. Инструменты для него на iOS и Android существуют и работают.
Кто должен писать и поддерживать автотесты?
В разных компаниях делается по разному. Где-то и код и тесты к нему пишут программисты, а тестировщки занимаются ручным тестированием, запуском автотестов и анализом результатов. Где-то программисты пишут основу под тесты, а тестировщики наполняют тесты данными и поддерживают работоспособность. Где-то программисты пишут Unit-тесты, а автотесты переданы в ведение тестировщиков. Где-то все тесты отданы на откуп тестировщиков, а ручного тестирования нет.
Зависит от квалификации тестировщиков, от сложности выбранной системы, от загруженности программистов, от желания и тех и других, в конце концов.