Топ 10 инструментов автоматизации тестирования 2018

https://medium.com/@briananderson2209/best-automation-testing-tools-for-2018-top-10-reviews-8a4a19f664d2
  • Перевод
Методы разработки программного обеспечения не стоят на месте, то же можно сказать и об используемых для разработки ПО инструментах и технологиях. В первую очередь, такое совершенствование необходимо для того, чтобы продуктивность и качество создаваемого продукта увеличились, время, необходимое для разработки, сократилось, а заказчик остался доволен полученным результатом. Таким образом, можно смело заявить, что тестирование играет важную роль в разработке качественного продукта.

Не так давно свет увидел World Quality Report 2017–2018 (Мировой стандарт проверки качества), выпущенный благодаря совместному труду сразу нескольких крупных компаний (Capgemini, Sogeti и Micro Focus), в котором было отмечено ряд интересных трендов в разработке и тестировании программного обеспечения. Авторы этого отчета считают, что основные направления в развитии разработки ПО заключаются в постоянном совершенствовании автоматизации тестирования и повсеместном применении гибких и DevOps-методологий (методология, которая объединяет в себе работу программистов и системных администраторов). Так, в данном отчете указано, что компаниям необходимо внедрять интеллектуальную автоматизацию и смарт-аналитику, для того чтобы ускорить процессы принятия ключевых решений и валидации продукта. Благодаря таким нововведениям компании смогут более эффективно справляться с тестированием интеллектуальных устройств нового поколения и высокоинтегрированных продуктов, изменения в которые вносятся постоянно. В отчете также говорится о необходимости создания интеллектуальных платформ для тестирования, характеризующихся высоким уровнем адаптивности. Благодаря таким платформам можно будет обеспечить эффективную поддержку полного жизненного цикла приложения.



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

Selenium


Считается, что Selenium является самым популярным фреймворком с открытым исходным кодом, предназначенным для автоматизации тестирования веб-приложений. Разработанный где-то в далеких двухтысячных и развивающийся в течение последующего десятилетия, Selenium представляют собой фреймворк для автоматизации процесса тестирования веб-приложений. За это время он успел завоевать сердца многих тестировщиков, особенно тех, у кого в распоряжении имеются продвинутые навыки программирования и опыт написания скриптов. Selenium можно рассматривать в качестве родоначальника некоторых современных инструментов автоматизации тестирования с открытым исходным кодом, например: Katalon Studio, Watir, Protractor и Robot Framework.

Фреймворк Selenium поддерживается несколькими ОС (Windows, Mac, Linux), а также многими браузерами (Chrome, Firefox, IE, и браузерами Headless). Скрипты для данного фрейма можно написать на большинстве популярных сегодня ЯП: Java, Groovy, Python, C#, PHP, Ruby и Perl.
Однако стоит отметить, что данный фреймворк имеет как плюсы, так и минусы. К преимуществам можно отнести гибкость, а также возможность написания сложных и эффективных скриптов для тестирования разрабатываемых приложений. С другой стороны, для того чтобы начать работать с Selenium, тестировщик должен обладать незаурядными знаниями в программировании и быть готовым уделять некоторое количество своего времени и энергии для написания специальных фреймов и библиотек, обеспечивающих выполнение определенных функций в процессе тестирования.

Веб-сайт: http://www.seleniumhq.org/
Лицензия: бесплатная

Katalon Studio


Katalon Studio — это эффективный инструмент для автоматизации процесса тестирования веб-приложений, мобильных приложений и веб-сервисов. Katalon Studio является потомком таких фреймворков, как Selenium и Appium. Он перенял у последних множество преимуществ, связанных с интегрированной автоматизацией тестирования ПО.

Для начала работы с данным инструментом вы можете как обладать начальными знаниями в тестировании ПО, так и быть настоящим гуру своего дела. Люди, далекие от программирования, могут с легкостью запустить свой проект по автоматизации тестирования (например, запустив функцию Object Spy для записи тестовых скриптов), а для программистов и опытных тестировщиков Katalon Studio окажется полезным с точки зрения экономии времени при написании новых библиотек и поддержке существующих скриптов.

Katalon Studio может быть интегрирован в CI/CD, он прекрасно работает в связке с популярными инструментами во время тестирования ПО: qTest, JIRA, Jenkins и Git. Для него предусмотрена приятная функция — Katalon Analytics, благодаря которой пользователи получают полное представление о процессе тестирования. Для этого предусмотрены специальные отчеты, которые выводятся на экран пользователей в виде метрики, диаграмм и графиков.

Веб-сайт: https://www.katalon.com/
Лицензия: бесплатная

UFT


Unified Functional Testing (с англ. комплексное функциональное решение для тестирования ПО) или UFT – это популярный коммерческий инструмент для функционального тестирования. Он предоставляет полный набор функций для тестирования API, веб-сервисов, а также для тестирования графического интерфейса десктопных, мобильных и веб-приложений на всех существующих платформах. Для данного инструмента предусмотрена расширенная функция распознавания объектов на основе изображений, многоразовые тестовые компоненты и документация по автоматическому тестированию.

UFT использует Visual Basic Scripting Edition, который может пригодиться для записи информации о выполненном тестировании, а также для управления объектами. UFT интегрирован с Mercury Business Process Testing и Mercury Quality Center. Инструмент поддерживает CI с помощью интеграции с инструментами CI, такими как Jenkins.

Веб-сайт: https://software.microfocus.com/fr-ca/software/uft
Лицензия: платная

Watir


Watir — это инструмент с открытым исходным кодом для автоматизации тестирования веб-приложений, использующий библиотеки Ruby. Для Watir предусмотрена возможность кросс-браузерного тестирования в большинстве существующих браузеров: Firefox, Opera, headless-браузеров и IE. Он также поддерживает управляемое данными тестирование и интегрирован с инструментами BBD, такими как: RSpec, Cucumber и Test / Unit.

Веб-сайт: http://watir.com/
Лицензия: бесплатная

IBM Rational Functional Tester


IBM RFT — это платформа для управляемого данными тестирования функциональности и регрессии ПО. Она поддерживает возможность тестирования широкого спектра приложений, написанных на различных языках программирования, таких как: .Net, Java, SAP, Flex и Ajax. RFT использует Visual Basic .Net и Java в качестве языков сценариев. RFT имеет уникальную функцию – Storyboard testing. Благодаря ей все связанные с автоматическим тестированием действия пользователей записываются и визуализируются в виде последовательных изображений – скриншотов приложений на различных этапах их тестирования.

Еще одной интересной особенностью платформы RFT является возможность ее интеграции с системами управления жизненным циклом приложений IBM Jazz (например, IBM Rational Team Concert и Rational Quality Manager).

Веб-сайт: https://www.ibm.com/
Лицензия: платная

TestComplete


TestComplete, созданный SmartBear, является эффективным инструментом для тестирования десктопных, мобильных и веб-приложений. TestComplete поддерживает различные языки сценариев, такие как: JavaScript, VBScript, Python и C ++ Script. Также как и в случае с рассмотренным ранее Katalon Studio, с помощью TestComplete тестировщики могут выполнять тестирование с использованием ключевых слов и управляемое данными тестирование. В инструменте также предусмотрена удобная функция записи и воспроизведения процесса тестирования.

TestComplete обладает схожей с UTF функцией распознавания объектов GUI, благодаря которой происходит автоматическое обнаружение и обновление объектов пользовательского интерфейса, что помогает избежать лишних хлопот по поддержанию тестовых скриптов при изменении AUT. Данный инструмент также интегрируется с Jenkins в течение CI-процесса.

Веб-сайт: https://smartbear.com/
Лицензия: платная

TestPlant eggPlant


TestPlant eggPlant – это инструмент автоматического функционального тестирования, основанный на анализе изображений, который позволяет тестировщикам эффективно выполнять AUT. Что касается методов тестирования, то TestPlant eggPlant полностью отличается от традиционных инструментов тестирования: в нем моделирование процесса происходит таким образом, как если бы пользователь занимался тестированием приложений, а не тестировщик, для которого такой процесс заключается в написании тест-скриптов. Такая особенность позволяет тестировщикам, которые не обладают большими знаниями в программировании, применять данный инструмент автоматизации тестирования интуитивно. TestPlant eggPlant поддерживается различными платформами, для него также предусмотрена возможность управления лабораторией и CI-интеграции.

Веб-сайт: https://www.testplant.com/
Лицензия: платная

Tricentis Tosca


Tricentis Tosca – это модельно-ориентированный инструмент автоматизации тестирования, который предоставляет довольно широкий набор функций для непрерывного тестирования, включая тестирование с последующим выведением данных, их анализом и интеграцией для поддержки гибких методологий программирования и DevOps-методологий.

Tricentis Tosca помогает пользователям оптимизировать использование ресурсов, необходимых для проведения повторного тестирования. Как в случае с другими подобными инструментами, с помощью Tricentis Tosca можно проводить тестирование веб-приложений, мобильных приложений и API. Для данного инструмента также предусмотрена возможность управления интеграцией, анализа рисков и распределенного исполнения.

Веб-сайт: https://www.tricentis.com/
Лицензия: платная

Ranorex


Ranorex – это платный универсальный инструмент для автоматизации тестирования веб-, мобильных и десктопных приложений. Инструмент характеризуется расширенными возможностями для распознавания GUI, применением многоразовых тестовых сценариев и возможностью записи/воспроизведения этапов тестирования ПО. Еще одной полезной чертой данного инструмента является возможность создания тестовых сценариев без необходимости писать код. Для тех тестировщиков, кто находится на самом начале пути, такая особенность окажется прекрасным подспорьем: тестировщикам не нужно будет обладать углубленными знаниями в программировании, для того чтобы проводить автоматическое тестирование своих проектов.
Инструмент поддерживает интеграцию Selenium для тестирования веб-приложений. Тестировщики могут группировать определенные результаты тестирований для разных платформ и в различных браузерах с использованием сетки Selenium. Для Ranorex также предусмотрены скидки для бизнес-клиентов.

Веб-сайт: https://www.ranorex.com/
Лицензия: платная

Robot framework


Robot Framework — это фреймворк для автоматического тестирования с открытым исходным кодом, в котором реализуется подход тестирования на основе ключевых слов для приемочного тестирования и разработки через приемочное тестирование (ATDD). Robot Framework предоставляет возможность решения различных задач автоматизации тестирования. Однако его возможности могут быть расширены благодаря внедрению дополнительных библиотек с помощью Python и Java. Например, Selenium WebDriver — популярная внешняя библиотека, используемая в Robot Framework.

Инженеры-тестировщики могут использовать Robot Framework в качестве фреймворка для автоматического тестирования не только веб-приложений, но для приложений под Android и iOS. Robot Framework покажется простым в изучении тем тестировщикам, кто уже знаком с тестированием на основе ключевых слов.

Веб-сайт: http://www.robotframework.org/
Лицензия: бесплатная





Топ 5 лучших инструментов автоматизации тестирования в 2018 году

Таким образом, каждый из описанных выше инструментов имеет свой уникальный набор возможностей, необходимый для решения постоянно меняющихся задач в области автоматического тестирования ПО. Благодаря таким инструментам появляется возможность осуществлять непрерывное тестирование и интеграцию, а также эффективно управлять процессом тестирования и получать отчет о проделанной работе. Данные инструменты отвечают всем требованиям, предъявляемым к тестированию мобильных и веб-приложений. Тем не менее, стоит отметить, что интеллектуальное тестирование и смарт-аналитика для адаптивных и гетерогенных сред – это то, что еще только предстоит реализовать в современных инструментах автоматизации тестирования.

Похожие статьи:

Поделиться публикацией
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама
Комментарии 16
  • +1
    Да кто вас научил, что Selenium — фреймворк для автоматизации тестирования?
    • –1
      Selenium is a portable software-testing framework for web applications.
      • +1
        Эт откуда?

        Selenium is a suite of tools to automate web browsers across many platforms.
        (http://www.seleniumhq.org/)
        • –1

          Из английской вики, конечно. Ну и суть как бы была в том, что используют для автоматизации тестирования. Selenium активно используют.

    • 0
      еще недавно наткнулся www.cypress.io
      • 0
        Ох, надеюсь в этом году хабр увидит мою статью по созданию с нуля полновесной «Automated System for Tests». На базе Selenium. С «полным фаршем»:
        — многопроцессное ассинхронное многопоточное ПО
        — Java+PHP+MySQL
        — Sockets, ORM и много-много всего остального.

        • 0
          уф… и мы надеемся)
          • 0
            Очень актуальная тема. Вчера вон пытался заставить Firefox с селениумом работать, выяснил что geckodriver не работает с FirefoxPortable (https://github.com/mozilla/geckodriver/issues/1028).
            Вот и получается что инструменты инструментами, а чтобы заставить это все работать нужно знать много нюансов. Для человека типа менеджера который просто хочет автоматизацию тестирования веб приложения — нужно провести кучу подготовительной работы. Не ясно куда смотреть и как это лучше сделать чтобы не наступить на грабли.
            Так что любая подробная информация только на пользу.
            • 0
              Уточняющий вопрос — java? Если да, то могу думаю помочь.
              • 0
                Ок, накидал на коленке эрзац-прототип, думаю можете поглядеть
                github.com/S-Kerrigan/seleniumPortable
                Прошу внимательно изучить pom.xml — там конфиги. В том числе и до вашего дистрибутива.
                Будут вопросы — пишите в ЛС, может и помогу.
                • +1
                  оказывается, нужно путь указывать на бинарник на не на обертку
                  правильно — PortableApps\\FirefoxPortable\\App\\Firefox64\\firefox.exe
                  неправильно — PortableApps\\FirefoxPortable\\FirefoxPortable.exe
                • 0

                  Есть мысль поделиться опытом автоматизации тестирования на базе Selenium + Gherkin + Docker + PHP + MySQL.
                  Websockets и ORM тоже имели место быть, но на процесс тестирования они мало влияют, там небольшие нюансы.
                  Единственное что останавливает — времени на подготовку проекта на гитхаб и саму публикацию, навскидку нужно часов 20-40.
                  Это вам не переводы строчить, без вычитки и корректуры.
                  Как тут связаны php и java в вашем понимании?

                  • 0
                    Как тут связаны php и java в вашем понимании?

                    Java — ядро AST.
                    PHP — бекенд для полноценного дашборда по управлению AST.

                    Selenium + Gherkin + Docker + PHP + MySQL.

                    В нашем случае нет прямой интеграции основного продукта и АСТ — это два полноценных автономных друг от друга ПО. Однако АСТ разработана была исходя из понимания необходимости тестировать основной продукт. Просто в него (основной продукт) «вот нельзя просто так взять, и вкурочить тесты».

                    Плюс хотелось вот прям 146% гибкости, без каких-бы то ни было ограничений. Поэтому сейчас даже JUnit/TestNG выкинуты за ненадобностью — слишком куцые, для тестов уровня «домохозяйка». Писать тяжелые пакеты тестов только мешали последние несколько лет. Параллелизм тот, что там есть — просто как собаке пятая нога. Не позволяет делать «как надо».
                    • +1
                      Что такое AST?
                      • 0
                        по созданию с нуля полновесной «Automated System for Tests»

                        Программный комплекс по настройке, запуску и эксплуатации тестовых сценариев. Анализу их логов. Хранилище результатов.
                        Как всегда, «картинко»:
                        image
                • 0
                  Благодаря этой статье узнал, что Каталон наконец-то начал поддерживать Linux системы.

                  Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.