20.04.2024
Подписывайтесь на Telegram-канал по ссылке

Искусственный интеллект и машинное обучение упростят работу тестировщиков

Интеллектуальная система тестирования

Научные специалисты Сибирского федерального университета и Высшей школы экономики разработали интеллектуальную систему тестирования графического интерфейса (ИСТ), которая упростит и ускорит тестирование программного обеспечения на любой платформе. Система основана на комбинации интеллектуального распознавания элементов интерфейса программы, проще говоря, компьютерного зрения, и последующей имитации действий пользователя через устройства ввода, такие как мышь, клавиатура или тачскрин. Результаты исследования приведены в «Журнале Сибирского Федерального Университета».

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

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

В результате, для каждого обновления, для каждой операционной системы приходится разрабатывать новый сценарий проверки. Это значительно увеличивает объём работы тестировщиков и затраты на проверку работы ПО. Разработанная учёными Сибирского федерального университета и Высшей школы экономики ИСТ позволяет проводить автоматические тесты ПО на любой платформе или устройстве, вне зависимости от интерфейса, вариаций шрифтов, визуальных эффектов и прочего. После загрузки сценария тестировщиком система выполняет следующие действия:

  • Сканирует экран тестируемого ПО.
  • Распознаёт графический интерфейс пользователя.
  • Симулирует нажатие кнопок.
  • Формирует отчёт о проведённом тестировании.

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