Пока нет оценок.
Пожалуйста, подождите...

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

Но, по правде говоря, это ошибочное суждение. Например, когда речь заходит о тестировании классических десктопных приложений на базе популярной операционной системы Windows.

А все почему? Потому что в отличие от автоматизации web или же проверки мобильного ПО, тестирование десктопных программ – в какой-то степени «танцы с бубном», и на это существует сразу несколько очевидных причин:

  • На сегодняшний день существует крайне низкое количество удобных решений с открытым исходным кодом, которые могли бы существенным образом упростить жизнь тестировщикам-автоматизаторам.
  • Коммерческие продукты стоят очень дорого.
  • Постоянное развитие веб-технологий влияет на то, что большинство desktop-продуктов попросту начинают отмирать. А это существенно сказывается на развитии и технической поддержке инструментов, и на наличии профильных специалистов в данной сфере.

Но не смотря на столь пессимистический настрой, все-таки можно выделить сразу несколько доступных решений с открытым кодом, которые достойны внимания.

Обзор ПО Winium, FlaNium and FlaUI

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

  1. Поддержка WinForms и WPF программ;
  2. Наличие REST-протокола взаимодействия между проверками и тестируемым ПО;
  3. Взаимодействие с Selenium (Java+Selenium).

Но, не смотря на все эти плюсы, у данного продукта есть один, но крайне существенный недостаток – ограниченный функционал. А именно, у пользователей нет возможности оперировать ValuePattern, SelectionItPattern и еще несколькими паттернами.

FlaUI
Следующий продукт, а конкретно FlaUI, также является интересным решением. Данная библиотека полностью создана на языке программирования C# и не содержит никакого API для операций извне. Это своего рода оболочка для библиотек автоматизации Microsoft Windows Automation API, с помощью которой тестировщики могут упрощать процедуру создания тестов.

В отличие от Winium, библиотека FlaUI имеет 100% взаимодействие с WinForms и WPF-приложениями, но в тоже время требует создания тестов на основе языка C#.

FlaNium
Как можно понять с наименования, данное решение являет собой отлаженное сочетание Winium и FlaUI.

Данный продукт включает в себя 2 равноценных компонента:

  • FlaNium.Desktop.Driver – базовая составляющая, которая воплощает в себе драйвер взаимодействия с проверяемым ПО посредством Windows Automation API и применяющий протокол взаимодействия Selenium REST API.
  • FlaNium.WinAPI – специализированная Java-библиотека, с помощью которой можно расширить Selenium REST API протокол и добавить дополнительные конфигурации по редактированию и взаимодействию с FlaNIUM driver. Дополнительно, данная библиотека позволяет типизировать классический Selenium WebElement и привести его к требуемым компонентам проверяемого ПО, постепенно добавляя вспомогательные методики взаимодействия, характеризующие определенный вид элементов.

Попеременное применение данных методов существенным образом облегчает процедуру взаимодействия с ПО и сокращает объемы написанного программного кода. К слову, существует масса поддерживаемых элементов, которые характерны для данного ПО. Ознакомиться с ними можно по ссылке – https://www.javadoc.io/static/com.github.lanit-exp/FlaNium.WinAPI/1.0/FlaNium/WinAPI/elements/package-summary.html

В завершение

Использование одного из трёх выше названных драйверов позволит раз и навсегда уйти от вендорского программного обеспечения для тестирования, понизив цену автоматизации и ее последующей поддержки на приличную сумму, а также унифицировав стек технологий к профессиональной квалификации тестеров (и разработчиков).

Оставить комментарий