Скриншотное тестирование как многоаспектный вид автоматизированной динамической верификации веб-приложений

Обложка

Цитировать

Полный текст

Аннотация

Предметом исследования является многоаспектное скриншотное тестирование как современный метод автоматизированной динамической верификации веб-приложений, объединяющий функциональное тестирование и проверку пользовательского интерфейса (UI). Современные методы тестирования сталкиваются с проблемами высокой трудоемкости, ложноположительных срабатываний и низкой масштабируемости, особенно в сложных проектах. Основная цель исследования — создать и внедрить метод, который позволяет повысить точность выявления дефектов, сократить время тестирования и снизить затраты на разработку тест-кейсов. В работе рассматриваются алгоритмы сравнения изображений, методы фильтрации динамических элементов и подходы к автоматизированному анализу интерфейсов для повышения эффективности и стандартизации в процессе верификации веб-приложений. В отличие от функционального и UI-тестирования по отдельности, предложенный метод позволяет анализировать несколько аспектов интерфейса и функциональности одновременно, что минимизирует трудозатраты и повышает надежность тестирования. Используется автоматическое сравнение эталонных и тестовых скриншотов на уровне пикселей, структурных элементов и содержимого с применением Python, Selenium, PIL и Pytest-xdist для параллельного выполнения тестов, что позволяет эффективно решать задачи верификации веб-приложений. Некоторые исследователи в области тестирования сходятся во мнении, что сам процесс тестирования мало стандартизирован и не имеет четких критериев оценки его эффективности. Предлагаемый нами метод позволяет добиваться решения поставленных задач верификации даже в условиях изменяющихся стратегий и подходов к оценке работоспособности системы за счет создания гибкой и точной системы проверки, которая объединяет различные типы тестирования в единую структуру, что делает данный метод подходящим для современных задач разработки программного обеспечения. Экспериментальная часть демонстрирует преимущества многоаспектного скриншотного тестирования по сравнению с другими методами, включая сокращение времени тестирования, повышение точности обнаружения дефектов и улучшение анализа получаемых отчетов. Данный подход может быть адаптирован к различным сценариям тестирования и выгоден для использования в высоконагруженных проектах, требующих регулярной регрессионной проверки.

Об авторах

Константин Сергеевич Макаров

Курский государственный университет

Email: makarov_ks@kursksu.ru
зав. кафедрой; кафедра программного обеспечения и администрирования информационных систем;

Руслан Игоревич Фаткин

Курский государственный университет

Email: ruslan4631@yandex.ru
ORCID iD: 0009-0006-3481-6122
аспирант; кафедра программного обеспечения и администрирования информационных систем;

Список литературы

  1. The Economic Impacts of Inadequate Infrastructure for Software Testing. NIST Report, May 2002. Режим доступа: https://www.nist.gov/system/files/documents/director/planning/report02-3.pdf (Дата обращения: 05.10.2024).
  2. Гурин Р. Е., Рудаков И. В., Ребриков А. В. Методы верификации программного обеспечения // Машиностроение и компьютерные технологии. 2015. № 10. С. 235-251.
  3. Quadri S. M. K., Farooq S. U. Software testing-goals, principles, and limitations // International Journal of Computer Applications. 2010. Т. 6. № 9. С. 7-9.
  4. Kumar S. Reviewing software testing models and optimization techniques: an analysis of efficiency and advancement needs // Journal of Computers, Mechanical and Management. 2023. Т. 2. № 1. С. 43-55.
  5. Xie Q., Memon A. M. Designing and comparing automated test oracles for GUI-based software applications // ACM Transactions on Software Engineering and Methodology (TOSEM). 2007. Т. 16. № 1. С. 4.
  6. Кудрявцева Е. Ю. Автоматизированное тестирование веб-интерфейсов // Горный информационно-аналитический бюллетень (научно-технический журнал). 2014. № S. С. 354-356.
  7. Кулямин В. В. Методы верификации программного обеспечения / В. В. Кулямин. М.: ИСП РАН, 2008. 111 с.
  8. Персиваль Г. Python. Разработка на основе тестирования / Г. Персиваль. М.: ДМК Пресс, 2018. 622 с.
  9. Берегейко О. П., Дубовский А. С. Автоматизация тестирования веб-приложений // Вестник магистратуры. 2016. № 12-4 (63). С. 39-41.
  10. Dwarakanath A., Neville D., Sanjay P. Machines that test Software like Humans. arXiv preprint arXiv:1809.09455 (2018).

Дополнительные файлы

Доп. файлы
Действие
1. JATS XML

Согласие на обработку персональных данных с помощью сервиса «Яндекс.Метрика»

1. Я (далее – «Пользователь» или «Субъект персональных данных»), осуществляя использование сайта https://journals.rcsi.science/ (далее – «Сайт»), подтверждая свою полную дееспособность даю согласие на обработку персональных данных с использованием средств автоматизации Оператору - федеральному государственному бюджетному учреждению «Российский центр научной информации» (РЦНИ), далее – «Оператор», расположенному по адресу: 119991, г. Москва, Ленинский просп., д.32А, со следующими условиями.

2. Категории обрабатываемых данных: файлы «cookies» (куки-файлы). Файлы «cookie» – это небольшой текстовый файл, который веб-сервер может хранить в браузере Пользователя. Данные файлы веб-сервер загружает на устройство Пользователя при посещении им Сайта. При каждом следующем посещении Пользователем Сайта «cookie» файлы отправляются на Сайт Оператора. Данные файлы позволяют Сайту распознавать устройство Пользователя. Содержимое такого файла может как относиться, так и не относиться к персональным данным, в зависимости от того, содержит ли такой файл персональные данные или содержит обезличенные технические данные.

3. Цель обработки персональных данных: анализ пользовательской активности с помощью сервиса «Яндекс.Метрика».

4. Категории субъектов персональных данных: все Пользователи Сайта, которые дали согласие на обработку файлов «cookie».

5. Способы обработки: сбор, запись, систематизация, накопление, хранение, уточнение (обновление, изменение), извлечение, использование, передача (доступ, предоставление), блокирование, удаление, уничтожение персональных данных.

6. Срок обработки и хранения: до получения от Субъекта персональных данных требования о прекращении обработки/отзыва согласия.

7. Способ отзыва: заявление об отзыве в письменном виде путём его направления на адрес электронной почты Оператора: info@rcsi.science или путем письменного обращения по юридическому адресу: 119991, г. Москва, Ленинский просп., д.32А

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

9. Порядок уничтожения персональных данных при достижении цели их обработки или при наступлении иных законных оснований определяется Оператором в соответствии с законодательством Российской Федерации.

10. Я согласен/согласна квалифицировать в качестве своей простой электронной подписи под настоящим Согласием и под Политикой обработки персональных данных выполнение мною следующего действия на сайте: https://journals.rcsi.science/ нажатие мною на интерфейсе с текстом: «Сайт использует сервис «Яндекс.Метрика» (который использует файлы «cookie») на элемент с текстом «Принять и продолжить».