Разработка десктоп-приложения для оптимизации создания UI-тестов

Раздел
Программирование
Просмотров
26
Покупок
0
Антиплагиат
Не указан
Размещена
1 Апр в 14:27
ВУЗ
2025
Курс
Не указан
Стоимость
2 700 ₽
Файлы работы   
1
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
pdf
вкр
649.1 Кбайт
Описание

Данная работа посвящена решению задачи снижения порога входа в автоматизацию пользовательского интерфейса путём разработки десктоп-приложения, позволяющего создавать сценарии UI-тестирования с помощью визуального редактора. Приложение реализовано с использованием технологий JavaFX, Maven, JUnit и интеграцией с инструментами Selenium и Playwright. В процессе выполнения исследования были поставлены и решены следующие задачи:

1.Анализ существующих инструментов UI-тестирования: Selenium, Playwright, TestFX, Ranorex, TestComplete;

2.Формализация функциональных и нефункциональных требований к системе;

3.Проектирование архитектуры приложения с разделением на UI, Core и Driver Adapter слои;

4.Реализация визуального редактора сценариев, механизма генерации тестов и модуля запуска;

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

В результате выполнения работы создано приложение, позволяющее пользователю без навыков программирования формировать и запускать UI-тесты с возможностью экспорта готовых сценариев в код на языке Java.

Оглавление

СОДЕРЖАНИЕ

СПИСОК СОКРАЩЕНИЙ И ОПРЕДЕЛЕНИЙ.................................................... 8

ВВЕДЕНИЕ ..................................................................................................... 11

ПОСТАНОВКА ЗАДАЧИ .................................................................................. 12

ГЛАВА 1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ .................................................. 13

1.1 Обоснование актуальности работы .............................................................. 13

1.2 Обзор существующих решений .................................................................... 17

1.2.1. Браузерные плагины и генераторы кода ............................................................................ 17

1.2.2. Десктопные студии «всё в одном» ....................................................................................... 17

1.2.3. Платформы SaaS с нулевым кодированием........................................................................ 18

1.2.4. Решения RPA ........................................................................................................................ 18

ГЛАВА 2. ОПРЕДЕЛЕНИЕ ТРЕБОВАНИЙ К РАЗРАБАТЫВАЕМОЙ СИСТЕМЕ ... 20

2.1. Функциональные требования ...................................................................... 20

2.1.1. Управление проектами: ....................................................................................................... 20

2.1.2. Экспорт кода ........................................................................................................................ 20

2.2. Нефункциональные требования .................................................................. 21

2.2.1. Модульность ........................................................................................................................ 21

2.2.2. Расширяемость .................................................................................................................... 21

2.2.3. Надежность .......................................................................................................................... 21

2.2.4. Платформенная независимость ......................................................................................... 21

2.2.5. Документированность ......................................................................................................... 21

ГЛАВА 3. ОБОСНОВАНИЕ ВЫБОРА ТЕХНОЛОГИЙ И СРЕДСТВ РАЗРАБОТКИ .................................................................................................. 22

3.1. Инструменты разработки ............................................................................. 22

3.2. Архитектура системы ................................................................................... 25

3.2.1. Общая структура слоёв........................................................................................................ 25

3.2.2. Описание слоёв и их ответственность ................................................................................ 26

3.2.3. Взаимодействие слоёв ........................................................................................................ 31

3.3. Обоснование выбора архитектуры .............................................................. 32

3.3.1 Чёткое разделение ответственности (Separation of Concerns) ........................................... 32

3.3.2. Расширяемость (Extensibility) .............................................................................................. 32

3.3.3. Поддерживаемость и тестируемость .................................................................................. 32

3.3.4. Удобство сопровождения.................................................................................................... 33

3.3.5. Соответствие принципам SOLID ......................................................................................... 33

3.3.6. Преимущества выбранного подхода .................................................................................. 33

ГЛАВА 4. РЕАЛИЗАЦИЯ ПРИЛОЖЕНИЯ ......................................................... 36

4.1. Структура Maven-проекта ............................................................................ 36

4.2. Конфигурация сборки и зависимостей ........................................................ 37

4.3. Инициализация и связывание компонентов ............................................... 38

4.4. Запуск и упаковка ........................................................................................ 38

ГЛАВА 5. ТЕСТИРОВАНИЕ И ВЕРИФИКАЦИЯ ................................................. 40

5.1. Юнит-тесты для Core Layer ........................................................................... 40

5.2. Интеграционные тесты для Driver Adapter ................................................... 40

5.3. GUI-тесты (TestFX) ......................................................................................... 40

5.4. Оценка производительности ....................................................................... 41

ГЛАВА 6. ПЕРСПЕКТИВЫ РАЗВИТИЯ И РАСШИРЕНИЯ ФУНКЦИОНАЛЬНОСТИ ................................................................................. 42

ЗАКЛЮЧЕНИЕ ................................................................................................ 44

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ............................................... 46

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

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1.Литвинова Л. А., Котляров И. А. Инструменты автоматизации UI-тестирования: обзор и сравнительный анализ // Программные продукты и системы. – 2021. – №1. – С. 92–97.

2.Федоров А. П. Практика UI-тестирования в Java-приложениях с использованием TestFX // Программные решения и технологии. – 2020. – №3. – С. 47–53.

3.Григорьев И. В. JavaFX и FXML: разработка графических интерфейсов. – М.: ДМК Пресс, 2019. – 352 с.

4.Захаров Д. Е. Современные подходы к архитектуре десктопных приложений // Информационные технологии. – 2022. – №4. – С. 56–61.

5.Fowler M. Patterns of Enterprise Application Architecture. – Addison-Wesley, 2002.

всего 12 источников

Вам подходит эта работа?
Похожие работы
Другие работы автора
Прямой эфир