что такое автоматизированное тестирование
Что дает автоматизация тестирования
При создании IT-решений ошибки обходятся дорого, это особенно заметно в медицине, где от качества ПО зависят человеческие жизни, или в сфере банкинга, где возможны крупные финансовые потери. Автоматизация тестирования позволяет организовать постоянную проверку качества продукта. Давайте разберемся, в каких случаях она необходима.
Одни компании ошибочно считают, что автоматизация – пустая трата времени и средств, другие – что это крутой тренд и «таблетка» от всех болезней. Рассмотрим, где золотая середина и в чем смысл автоматизации.
Зачем тестировать
Малейшая ошибка в программном обеспечении грозит огромными расходами. Чем лучше выстроены процессы разработки, тем меньше риски. Однако, если обратиться к фактам, мы видим, что недочеты допускают даже такие гиганты, как Google, Microsoft или ведущие банки.
Например, одна из знаменитых “аварий” финансового мира произошла в Первом национальном банке Чикаго в конце 90-х: в одночасье счета клиентов безосновательно выросли на 900 миллионов долларов. Тогда старший вице-президент банка Джеймс Ланкастер признал, что дело в «программной ошибке в компьютере» – которую, к счастью, никто не успел использовать.
Дорогостоящие ошибки бывают и в других отраслях, казалось бы, не связанных напрямую с IT. Известный пример – аварии при запуске космической техники, в частности, в 2017 году Роскосмос утратил спутник стоимостью 2,6 млрд рублей.
При работе с масштабными IT-решениями, например, системами дистанционного банковского обслуживания (ДБО), важно постоянно тестировать не только работу отдельных функциональностей, но и их взаимодействие. В условиях сжатых сроков, когда ведущие банки каждый месяц обновляют свои приложения, проверить все вручную невозможно – на это как минимум не хватит времени.
При создании IT-продуктов для бизнеса обычно сочетают два подхода:
Что дает автоматизация
Это одно из достаточно новых направлений в разработке, окруженных большим количеством мифов. Чаще всего бизнес обращается к автоматизации, веря, что она:
В свою очередь, два последних утверждения действительно справедливы: грамотная автоматизация тестирования помогает и в ускорении релизов, и в увеличении покрытия кейсов. При этом ручное обеспечение качества и автоматизация, как правило, одинаково важны и используются в комплексе. Кроме того, каждый проект индивидуален, и иногда в автоматизации нет необходимости.
Когда автоматизация обязательна
Задачи автоматизации
Как правило, мы привлекаем экспертов SDET для решения следующих задач:
Результаты
Автоматизация помогает выстроить баланс:
Кроме того, при необходимости можно ускорить релизы. Например, если в спринте разработки нужно проверить около 400 кейсов, то их ручная проверка займет до двух недель, а автотесты можно провести ночью и проанализировать за 4 часа.
Бизнес, благодаря автоматизации, получает возможность в любое время убедиться в том, что ключевые функции системы работают правильно и проверить, нет ли ошибок (а если они есть, то в чем заключаются).
Пример
Предположим, что на текущий момент в мобильном банке нужно проходить до 700 кейсов, каждый – от 70 до 100 раз в год. Ручной проверки требуют менее 25% кейсов, остальные 75% можно автоматизировать.
Затраты времени при ручной проверке:
Затраты времени при автоматизации:
Ночной прогон тестов занимает 8 часов, но без участия человека, поэтому не учитывается.
Прочие затраты времени:
Конечно, каждый кейс имеет свои особенности, поэтому временные затраты могут быть разными. Мы постоянно анализируем, сколько времени нужно на написание автоматических тестов, поддержку, анализ результатов.
В среднем, автоматизация экономит от 30 до 50% времени как минимум, позволяя выделить больше времени, например, на развитие и улучшение продукта.
Как происходит автоматизация тестирования
У каждой IT-компании есть свои особенности в автоматизации тестирования, как и в других рабочих процессах. Мы в SimbirSoft придерживаемся следующих методов, которые помогают оперативно выстроить работу с проектами наших клиентов.
Процесс тестирования начинается с разработки стратегии – тест-плана, основы для составления отдельных тест-кейсов. Для автоматизации SDET инженеры выбирают ключевые, часто используемые сценарии работы пользователя с продуктом – такие сценарии дают около 80% бизнес-ценности.
После этого мы создаем основу для дальнейших автотестов, настраиваем стенды и workflow по работе с ними, CI для регулярного запуска тестов на различных ветках. Мы выбираем, какие подходы к подготовке тестовых данных мы будем использовать (API, доступ к базам данных, генерация синтетических данных, использование данных с прода). Инженеры SDET пишут тесты, которые покрывают ключевые сценарии работы с продуктом, анализируют полученные результаты и необходимость дальнейшей автоматизации.
Мы разрабатываем автоматизированные тесты, используя все наиболее востребованные языки программирования – Java, Python, Kotlin и др. Наши основные инструменты и технологии – Appium, TestNG | JUnit, RobotFramework | Pytest, Selenium | Senenide, Allure, TeamCity, Jenkins, JMeter.
Какие тесты нужно автоматизировать в первую очередь – зависит от особенностей конкретного продукта. Большинство компаний автоматизируют smoke тесты, регрессионные тесты для проверки уже готовых функциональностей, а также кейсы для проверки различных параметров (например, валидных и невалидных данных при регистрации).
Мы в своей практике выстраиваем процессы автоматизации тестирования уже на старте разработки, параллельно с ручным тестированием. Эта работа – не единоразовая, она ведется непрерывно, особенно на крупных проектах, в том числе банковских.
Подводя итоги
Баланс ручного и автоматизированного тестирования позволяет постоянно контролировать качество IT-продукта. Некоторые проекты проверяют вручную, другие задачи можно успешнее решить с помощью автоматизации. Тестирование вручную используют в тех случаях, когда люди незаменимы, например, если нужна локализация, описание ошибок, ручная проверка юзабилити. В небольших проектах часто тесты пишут сами разработчики.
Ручное тестирование в комплексе с автоматизацией проводят при создании крупных IT-продуктов, где работает несколько команд (например, в банковских приложениях), где есть сложные алгоритмы и бизнес-логика. Этот метод помогает выстроить процессы тестирования продукта и снизить риск дорогостоящих ошибок, что бывает особенно важно при работе в условиях жесткого графика релизов.
Спасибо за внимание! Надеемся, что статья была вам полезна!
Автоматизация тестирования программных систем
Приветственное слово
Здравствуйте, уважаемые хабрапользователи! Хочу представить вашему вниманию статью, в которой речь пойдёт о тестировании программных систем, его автоматизации, а также средствах для этого используемых.
На сегодняшний день уже мало кто сомневается в целесообразности проведения процесса тестирования разрабатываемых программных продуктов, но, к сожалению, не все ясно себе представляют как тестирование грамотно внедрять и применять. Корифеям-тестировщикам моя статья не принесёт практической пользы, а вот интересующихся тематикой новичков порадовать есть чем.
Изначально я не ставлю своей целью охватить всю проблемную область. На это не хватит и серии книг, которую мне, к тому же, не хватит знаний и опыта написать. Основная задача статьи — не растекаясь мыслью по древу, создать у читателя достаточно чёткую картину того, что вообще из себя представляет автоматизация тестирования и когда, а также с чем её едят.
Основные понятия
Начну с небольшого теоретического экскурса.
Итак, под тестированием принято понимать деятельность, выполняемую для оценки и улучшения качества ПО. В общем случае тестирование базируется на обнаружении дефектов и проблем в программных системах.
Автоматизированное тестирование ПО — процесс тестирования программного обеспечения, при котором основные функции и шаги теста, такие как запуск, инициализация, выполнение, анализ и выдача результата, производятся автоматически с помощью инструментов для автоматизированного тестирования.
В свою очередь, инструмент для автоматизированного тестирования — это программное обеспечение, посредством которого осуществляется создание, отладка, выполнение и анализ результатов прогона тест-скриптов (Test Scripts — это наборы инструкций для автоматической проверки определенной части программного обеспечения).
Тестирование программных систем состоит из динамической верификации поведения программ на конечном наборе тестов. При этом тесты выбираются из обычно выполняемых действий прикладной области и обеспечивают проверку соответствия ожидаемому поведению системы.
Применение автоматизированного тестирования
Первым пунктом в этом списке стоит тестирование производительности. Нагрузочное, стрессоустойчивое, тестирование на стабильность… Без автоматизации его выполнение трудно себе представить. По этой причине имеется широкий выбор продуктов от разных производителей и столь же высокие цены, даже в случае неудобного и слабо функционального инструмента.
Следом идёт регрессионное тестирование. Означает оно проверку ПО на корректность функциональности, выпущенной и протестированной в предыдущей версии. Выполняется с регулярной частотой, задаваемой в зависимости от условий: у кого-то с каждым новым билдом, а у кого-то с каждой версией для заказчика.
Конфигурационное тестирование – выполнение одних и тех же тестов в разных условиях. То есть когда один или несколько компонентов архитектуры системы требуется проверить в разном окружении, обычно заявленном в изначальных требованиях. Например: поддержка СУБД от разных производителей, работа в разных клиентских браузерах, использование в нескольких ОС и т.п. То есть некий аналог регрессионного тестирования, но в рамках одной версии системы.
Функциональное тестирование. Ясно, что здесь речь идёт о проверке нового функционала. Иногда бывает, что без автоматизации никак не обойтись. Даже если нужно выполнить тестирование только один раз. Обычно, впоследствии эти тесты и используются для регресса.
Установочное тестирование, выполняется для проверки условий инсталляции (и настройки) продукта с учётом тех или иных требований к системе от заказчика.
«А зачем?»
Как автоматизировать тестирование?
Вернее даже будет сказать так: как подойти к внедрению процесса автоматизации тестирования в своей деятельности?
Во-первых, следует обратить внимание, насколько хорошо инструмент для автоматизации распознает элементы управления в приложении. В случае, когда элементы не распознаются, стоит поискать плагин, либо соответствующий модуль. Если такового нет – от инструмента лучше отказаться.
Во-вторых, нужно иметь в виду, сколько времени требуется на поддержку скриптов, написанных с помощью выбранного инструмента. Для этого можно записать простой скрипт, который выбирает пункт меню, а потом представить, что изменился пункт меню, который необходимо выбрать. Если для восстановления работоспособности сценария придется перезаписать скрипт целиком, то инструмент не оптимален, так как реальные сценарии гораздо сложнее.
И последний момент, на который надо обратить внимание – насколько удобен инструмент для написания новых скриптов. Сколько требуется на это времени, насколько можно структурировать код, насколько код читаем, и т.д.
На финишной прямой
Чтобы принять окончательное решение о целесообразности применения автоматизации, обычно советуют ответить на возникающий естественным образом в данной ситуации вопрос: «превалируют ли в нашем случае преимущества над недостатками?». Если недостатки в конкретном случае неприемлемы, то от автоматизации стоит воздержаться.
Выбор инструмента
Чаще всего зависит от объекта тестирования и требований к тестовым сценариям, т.к., разумеется, инструменты тестирования не могут поддерживать полный объём технологий, используемых при разработке приложений. Таким образом, выбор инструмента сводится к банальному методу проб и ошибок. В итоге, нередко тестировщики выбирают несколько инструментов для тестирования функций приложения.
Логично теперь будет поближе рассмотреть некоторые популярные средства автоматизации тестирования и привести пример написания простого тест-скрипта.
HP QuickTest Professional
Средство автоматизации от кампании Hewlett-Packard. Распространяется на платной основе (8000-10000 USD). Является основным инструментом автоматизации функционального тестирования от данного производителя. Позволяет автоматизировать функциональные и регрессионные тесты через записи действий пользователя при работе с тестируемым приложением, а потом исполнять записанные действия с целью проверки работоспособности ПО.
Записанные действия сохраняются в виде скриптов.
Скрипты могут быть отображенные в инструменте как VBScript (expert view), или же как визуальные последовательные шаги с действиями (keyword view).
Каждый шаг может быть отредактирован и на него можно добавить точки проверки (checkpoint), которые сравнивают ожидаемый результат с полученным.
IBM Rational Functional Tester
Тоже платный, но не настолько («всего-то» 6000 USD).
Rational Functional Tester предоставляет тестировщикам средства автоматизированного тестирования, позволяющие выполнять функциональное тестирование, регрессивное тестирование, тестирование пользовательского интерфейса и тестирование управляемое данными.
Много описательной информации о нём не дам, а лучше приведу практический пример.
Пример использования
Будет использована интеграция IBM Rational Functional Tester со средой разработки Microsoft Visual Studio. Для создания функционального теста необходимо выполнить следующие действия:
1) В среде разработки Microsoft Visual Studio создать новый проект «Functional Test Project»:
2) Выполнить запись пользовательских действий с тестируемым приложением:
3) Создать проверочную точку в процессе выполнения записи. Проверочная точка также будет выполнять проверку значения в выпадающем списке:
4) Сохранить результаты записи:
Результат выполнения
Быстрый старт: как автоматизировать тестирование
Важный этап разработки любого ИТ-продукта – это тестирование. Оно помогает определить, соответствует ли программное обеспечение требованиям, все ли элементы приложения работают как надо и если есть проблемы в первых двух случаях, что нужно сделать, чтобы их исправить. По сути, тестирование – это репетиция перед согласованием с клиентом и выходом в продакшн.
Проверить, качественный ли продукт и соответствует ли он ожиданиям, можно вручную или с помощью автоматизации тестирования. В первом случае QA-инженер воспроизводит действия пользователя и фиксируют ошибки, если таковые имеются.
Во втором случае запуск, анализ, выдача результата происходят автоматически, с использованием ПО. ИТ-специалист лишь обрабатывает собранную информацию. Поэтому автоматизация тестирования — это своего рода инструмент оптимизации процессов.
Рассказываю подробнее про автоматизацию тестирования в статье.
Содержание
Как работает автоматизированное тестирование
Автоматизация тестирования имеет четкий алгоритм действий:
Сначала программист берет часть тестируемого приложения и предполагает, какие данные решение должно вернуть, если туда попадут другие данные.
Потом специалист собирает комбинации информации на «вход» и «выход», которые будут в идеальной ситуации. Эти данные нужны ему для автоматизированного тестирования.
Затем программист намеренно добавляет в тест неправильные данные и ответ, который ожидается в этом случае.
После того, как проверочные сведения готовы, разработчик «упаковывает» эти данные в код, пишет тест. Эта программа будет «наблюдать» за тем, как продукт реагирует на разную информацию.
В зависимости от стадии проекта специалисты проверяют результаты автоматизированного тестирования и резюмируют, правильно ли работает тот или иной элемент приложения.
Каким бывает автоматизированное тестирование
Автотесты можно условно разделить на три типа: интеграционные (API), модульные (Component+Unit) и системные (end-to-end, UI/API).
Цель модульных тестов – убедиться в исправности отдельно взятых функций в рамках одного модуля, из которых построено программное обеспечение. Как правило, такие проверки занимают считанные секунды. Системные тесты нужны для проверки приложения в целом. Их задача — убедиться, что модули решения соединены между собой правильно. Также с помощью системных тестов проверяют функции регистрации, биллинга и оформления заказа – части приложения, которые ни в коем случае не должны сломаться. Длительность таких тестов – от десятка секунд до нескольких минут. Нужно только запустить решение, загрузить его в эмулятор или веб-браузер и «пощёлкать» сценарии.
Интеграционные тесты нужны для проверки функциональности, которую невозможно сделать с помощью модульного теста, а использовать системный – излишне.
Вот так выглядит пирамида тестирования, визуальная метафора с сегментацией по уровню масштаба задачи. Чем выше автотест в этой пирамиде, тем он дороже в разработке и поддержке.
Чтобы ИТ-решение имело быструю, гибкую тестовую базу, нужно, чтобы её преобладающую часть составляли модульные тесты, далее – интеграционные, и самая маленькая доля – системные.
Как это работает в действительности? Представьте, что вам нужно добавить функцию комментариев к изображениям. Если проверите всё только системными тестами, вы получите очень медленную тестовую базу: проверка любой правки в коде будет занимать минуты. И наоборот, если протестируете только модульными, увидите, что из-за ошибки на стыке модулей нужная вам функция не работает, хотя тесты проходят.
Плюсы автоматизированного тестирования
Автоматизация тестирования имеет важные для разработчиков преимуществ. Их применение помогает быстро решать сразу несколько задач.
Идентификация ошибок в коде на первых этапах разработки. Команда может сразу устранить эти проблемы без чрезмерного расхода ресурсов.
Локализация ошибок. «Низкоуровневое» автоматизированное тестирование помогает как можно точнее указать на причину проблемы.
Высокая скорость разработки продуктов. Программист может написать код одного из компонентов приложения и проверить корректность его работы при отсутствии остальных элементов системы, например, UI.
Наличие структуры. Если автоматизация тестирования корректна и в актуальном состоянии, у разработчиков всегда исчерпывающая информация о покрытом тестами коде. В дальнейшем новички и команда в целом лучше понимают, что было на том или ином этапе разработки спустя несколько месяцев.
Особенности автоматизированного тестирования
Ручное тестирование в некоторых компаниях и правда перестаёт существовать и остаётся только в тонкой прослойке исследовательского тестирования. Однако, при переходе на автоматизированное тестирование, нужно иметь ввиду некоторые моменты:
Выбор тестов. Чтобы автоматизированное тестирование прошло успешно, сначала следует определиться, что именно вы будете проверять. Ошибка на этом этапе может испортить ход всех дальнейших работ.
Ресурсы на разработку. Поскольку автоматизация тестирования — это ПО, на его написание тоже нужны специалисты и время.
Поддержка. Автоматизированное тестирование нуждается в регулярной актуализации. QA-инженеры должны следить за корректностью тестируемых параметров, версиями софта и многим другим.
Наличие навыков программирования. Несмотря на то, что на рынке есть инструменты, которые упрощают работу тестировщика, без опыта в программировании обойтись по-прежнему сложно.
Что выбрать: ручное или автоматизированное тестирование
Ручное тестирование будет лучшим решением, если вы:
еще в процессе осознания функциональности вашего продукта;
нуждаетесь в проверке юзабилити и верстки;
хотите локализовать и описывать возникающие проблемы;
быстро проводите ручные тесты, а их количество совсем небольшое;
не обладаете нужными бюджетом и временем на автоматизацию тестирования.
Автоматизированное тестирование рекомендуется к внедрению в случаях, когда у вас:
много ручных тестов и нет времени на постоянную проверку всего регресса;
проходит много времени между обнаружением ошибки и ее исправлением;
подготовка к тестированию – формирование данных и настройка конфигурации – требует много времени;
требуется поддержка старых версий софта – нужно проверять новые сервис-паки и патчи;
нет уверенности, что новый код не сломает результат работы других разработчиков.
Безусловно, у автоматизированного тестирования есть нюансы. Они требуют время специалистов на написание и поддержку. А если внедрение прошло некорректно, автоматизация тестирования может даже принести больше вреда, чем пользы. Поэтому расскажем, как сделать это грамотно.
Как автоматизировать тестирование
Автоматизировав тестирование в нескольких десятках проектов, мы сформировали следующие рекомендации, которые сделают процесс проверки приложений корректным и значительно облегчат работу всей команды.
1. В первую очередь определите цели автоматизации тестирования. Одни хотят оптимизировать издержки, другие – сократить стоимость исправления ошибки, а кто-то – повысить охват элементов тестирования. Формулирование приоритетов поможет вам понять, что именно нужно автоматизировать и к чему приступить в первую очередь.
2. Рассчитывайте окупаемость вложений в автоматизацию тестирования, фиксируйте метрики и старайтесь делать это регулярно. Цель – определить, действительно ли вам нужна автоматизация этого процесса, и необходимость в этом отпала, корректировать план работ.
3. Подумайте, что вам нужно автоматизировать, а что – нет. Подсчеты помогут понять, возможно, экономически выгоднее поручить тестирование продуктов команде на аутсорсе, если объем работ слишком мал для наемного специалиста.
4. Пропишите, что вы ожидаете получать в логах. Это поможет сформировать у вас и вашей команды доверие к инструменту и понимание его полезности в конкретном проекте.
5. Ищите баланс между минимальным и максимальным объемами данных, чтобы автоматизация тестирования не тратила ваши ресурсы и приносила как можно больше пользы.
6. Позаботьтесь, чтобы вся проектная команда понимала, как работает автоматизация тестирования. Это важно в случае, если автотест “упадет” и нужно будет перепроверить вручную. Для таких случаях пропишите четкую инструкцию, а если работаете с командой на аутсорсинге, запросите такой пошаговый алгоритм действий.
7. Автоматизированное тестирование – это такой же софт, как и прочие ИТ-продукты. Поэтому нанимайте разработчиков, в чьей квалификации вы уверены – от их профессионализма зависит эффективность приложения, его архитектура и то, насколько легко его можно будет поддерживать в актуальном состоянии.
8. И самое главное – придерживайтесь пирамиды тестирования. Разработайте побольше низкоуровневых автотестов и буквально считанное количество UI.
Как выбрать инструмент автоматизации
Рынок решений для автоматизированного тестирования очень широк, и у каждого своя направленность. От правильности выбранного инструмента зависит результат: он может быть провальным или, наоборот, может стать прорывом. Вот несколько важных рекомендаций, которые помогут определиться с ИТ-решением.
Поддержка нескольких приложений. Неплохо, если инструмент поддерживает возможность тестирования в большинстве известных браузеров, операционных систем и мобильных устройств.
Простота использования. Он должен быть интуитивно понятным и удобным для разных специалистов, а саму автоматизацию тестирования – простой в написании и действии на нескольких проектах.
Наличие отчетности. При выборе инструмента важно проверить, сколько автотестов проведено, какие успешны, а какие – нет, состояние автоматизированных пакетов и прочее. И, конечно, важна функция экспорта результатов из системы.
Скорость. Продукты становятся сложнее, а значит, командам важна скорость проведения автоматизированного тестирования.
Популярные инструменты автоматизированного тестирования
А теперь расскажем о наиболее эффективных решениях для автоматических тестов, которые успешно зарекомендовали себя в среде разработчиков.
Selenium
Подходит для QA-инженеров c продвинутыми навыками программирования и написания скриптов.
Решение гибкое, и в этом оно превосходит большинство инструментов автоматизации тестирования.
Можно писать скрипты на нескольких языках: Java, PHP, C#, RubyPython, Groovy, Python, Ruby, Perl.
Работает в самых известных операционных системах (Windows, Linux, Mac) и браузерах.
Основной недостаток системы – необходимость тратить много времени на создание фреймворков и библиотек.
SoapUI
Не подходит для автоматизированного тестирования мобильных или веб-приложений – идеален для API и сервисов.
Имеет развитую функциональность, которая существенно упрощает работу разработчиков. Например, возможность генерировать тесты обычным перетаскиванием, использовать файлы и базы данных, повторно применять скрипты и проводить асинхронное тестирование.
Postman
Apache JMeter
Имеет открытый исходный код.
Позволят протестировать нагрузку и производительность приложений. Подходит для тестирования API и сервисов.
Поддерживает CSV-файлы, которые нужны для установки значений для параметров API.
Легко интегрируется с инструментами CI. Поэтому часто используется программистами в качестве компонента цепочки решений DevOps и CI.
Есть функция перезаписи результатов автоматизированного тестирования.
Cypress
Относительно новый инструмент тестирования, но уже так сильно любимый многими QA-инженерами и разработчиками.
Имеет открытый исходный код.
С его помощью можно протестировать все, что работает в браузере.
Хоть тесты системы созданы на JavaScript, работа с командами интуитивно понятна любому программисту.
Удобно использовать для всех видов тестирования.
Protractor
Это фреймворк, который создан с учетом требований к ИТ-продуктам с поддержкой Angular JS. При этом он прекрасно работает и с non-Angular JS приложениями, что дает ему значительные преимущества перед конкурентными инструментами.
Подходит для проверки веб-приложений, которые сочетают в себе технологии Node.js, Selenium Webdriver, Jasmine и многие другие.
Puppeteer
Это библиотека Node.js с открытым исходным кодом. Разработка Google, поэтому инструмент поддерживает любые действия в Google Chrome.
А для тех, кто не работает с Chrome stalwarts, есть хорошие новости: Mozilla тоже использует Puppeteer в Firefox.
Appium
Инструмент с открытым исходным кодом.
Предназначен для тестирования мобильных приложений для iOS и Android.
Универсален: автоматизирует приложение с любого языка и фреймворка.
Не требует SDK или перекомпиляции приложения.
WebdriverIO
Имеет собственный подход в использовании возможностей Selenium WebDriver.
Обладает читаемым и очень простым синтаксисом.
Имеет гибкую и легко расширяемую библиотеку для Node.js.
У решения есть активное сообщество разработчиков, которые пишут расширения и плагины.
Robot Framework
Можно загрузить различные библиотеки, например, SeleniumLibrary.
Поддерживает веб и мобайл: работает с большинством известных браузеров и устройствами на Android и iOS.
Есть возможность задавать тэги автоматизированным тестам.
Автоматическое создание отчетов, без дополнительной команды. Более того, можно объединить результаты нескольких прогонов.
Автоматизация тестирования – важный этап развития команд разработки, который позволяет улучшать качество создаваемых ИТ-продуктов для конечных потребителей. Бизнес в целом ощущает на себе преимущества автоматизации: снижение финансовых затрат, сведение человеческого фактора к нулю, рост производительности труда.