Тип работы:
Предмет:
Язык работы:


Автоматизация GUI тестирования в проекте WMP

Работа №131356

Тип работы

Бакалаврская работа

Предмет

программирование

Объем работы36
Год сдачи2017
Стоимость4375 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
30
Не подходит работа?

Узнай цену на написание


Введение 5
1. Обзор 7
1.1. Пользовательский интерфейс проекта WMP 7
1.1.1. Графический интерфейс редактора диаграмм . . 7
1.1.2. Критерии выбора инструмента тестирования ... 8
1.2. Основные инструменты GUI тестирования 9
1.3. Selenium WebDriver 9
1.4. Selenide и Java.awt.Robot 11
2. Архитектура разработанного решения 12
3. Сервисы навигации по проекту 13
3.1. Архитектура инструментов навигации 13
3.2. Авторизация и создание страниц 14
4. Сервисы тестирования редактора 15
4.1. Сервисы тестирования конструктора диаграмм 15
4.1.1. Архитектура 15
4.1.2. Сервис Palette 17
4.1.3. Сервис PropertyEditor 18
4.1.4. Сервис Scene 19
4.2. Сервис тестирования верхнего меню 21
4.2.1. Сервис тестирования дерева папок 22
4.2.2. Сервис хранения диаграмм 23
4.3. Сервис тестирования жестов мыши 26
5. Средства конфигурирования созданного решения 28
5.1. Структура и ограничения конфигурационных файлов . . 28
5.2. Интегрирование конфигураций в WMP 30
5.3. Интегрирование конфигураций в модуль GUI тестирования 31
6. Обучающие анимации 32 
7. Заключение
Список литературы


Во многих проектах помимо функционального и интеграционного тестирования используется и автоматизированное тестирование графического интерфейса, или GUI тестирование (Graphical User Interface). Само по себе GUI тестирование — это имитация действий пользователя. Оно предназначено для проверки выполнения всех основных сценариев работы с приложением. В широком смысле графическое тестирование позволяет:
• выявлять ошибки в функциональности посредством графического интерфейса;
• выявлять необработанные исключения, возникающие при взаимодействии с графическим интерфейсом;
• выявлять некорректные ситуации при работе с выводимыми данными;
• проверять успешность выполнения основных пользовательских сценариев.
На кафедре системного программирования СПбГУ силами студентов и преподавателей разрабатывается проект WMP. Он является аналогом проекта QReal и служит для создания средств визуального программирования на основе построения диаграмм. Ярким примером такой среды, построенной с помощью QReal, является TRIK Studio, предназначенная для программирования роботов. В отличие от QReal, WMP и все порождаемые им среды программирования находятся в web пространстве в рамках одной системы. На данном этапе развития WMP включает в себя редактор диаграмм для роботов и BPMN (Business Process Model and Notation) редактор. Первый полностью повторяет язык TRIK Studio. Платформа WMP предоставляет библиотеки, с помощью которых процесс создания каждого такого редактора существенно упрощается. Учитывая модульность архитектуры, каждый редактор является по сути подключаемым модулем к платформе, то есть легко интегрируемым с ней.
Как и любой другой программный продукт, WMP должен тестироваться, но, в отличие от большинства web проектов, главная функциональность WMP — составление диаграмм. Существуют инструменты GUI тестирования, позволяющие имитировать нажатие на кнопку, ввод текста и другие элементарные действия, но они не подходят для конструктора диаграмм ввиду того, что они слишком низкоуровневые. Необходимы операции более высокого уровня, которые позволят про-изводить элементарные манипуляции с диаграммой в рамках одной ко-манды. Также в силу того, что речь идет об имитации действий пользователя, хорошим следствием применения технологий GUI тестирования было бы создание обучающих анимаций, которые позволили бы упростить введение пользователя в предметную область.
Постановка задачи
На основе имеющихся библиотек GUI тестирования сайтов разработать инфраструктуру для графического тестирования в проекте WMP.
Для достижения этой цели были поставлены следующие задачи.
1. Разработать средства тестирования редактора диаграмм WMP.
2. Разработать средства конфигурирования полученного решения.
3. Реализовать инструменты, позволяющие создавать
обучающие анимации.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В ходе данной работы были получены следующие результаты.
1. Разработаны сервисы GUI тестирования для навигации по проекту WMP.
2. Разработаны сервисы GUI тестирования для редактора диаграмм.
• Сервисы для тестирования конструктора диаграмм.
• Сервис для тестирования верхнего меню редактора.
• Сервис для тестирования дерева папок.
• Сервис для тестирования жестов мыши.
3. Спроектированы и интегрированы средства конфигурации.
4. Реализованы инструменты, позволяющие создавать обучающие анимации.
5. Выявлен ряд ошибок в коде платформы WMP, некоторые из них исправлены.
Результаты данной работы позволяют создавать автоматизированные тесты графического интерфейса проекта WMP при помощи высокоуровнего API. Методы разработанных сервисов позволяют ими-тировать все основные манипуляции с диаграммами, все возможные действия пользователя с верхним меню редактора, включая сохранение и открытие диаграмм, а также жесты мыши. Благодаря спроектированным и внедренным средствам конфигурирования, появляется возможность изменять идентификаторы элементов, участвующих в тестировании, только в одном месте, что позволяет разрабатывать WMP практически независимо от GUI тестирования.



[1] AngularJS. AngularJS API Docs.—Режим доступа: https://docs.angularjs.org/api (дата обращения: 01.09.2016).
[2] Johnson Rod и др. Spring Framework Reference Documentation. — Режим доступа: https://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/ (дата обращения: 01.09.2016).
[3] Kumar Yogesh. Comparative Study of Automated Testing Tools: Selenium, SoapUI, HP Unified Functional Testing and Test Complete. — 2015. — Режим доступа: http://www.jetir.org/papers/JETIR1509007.pdf (дата обращения: 01.09.2016).
[4] Microsoft. TypeScript Documentation. — Режим доступа: https://www.typescriptlang.org/docs/home.html (дата об-ращения: 01.09.2016).
[5] Oracle. Java Platform Standard Edition 7 Documentation. — Режим доступа: https://docs.oracle.com/javase/7/docs/api/java/awt/Robot.html (дата обращения: 01.09.2016).
[6] Phillip Webb и др. Spring Boot Reference Guide. — Режим доступа: https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/ (дата обращения: 01.09.2016).
[7] Rappid. Joint API. — Режим доступа: http://resources.jointjs.com/docs/jointjs/v1.1/joint.html (дата обращения: 01.09.2016).
[8] Selenide. Selenide documentation. — Режим доступа: http://ru.selenide.org/documentation.html (дата обращения: 01.09.2016).
[9] Selenium. Selenium Documentation. — Режим доступа: http://www.seleniumhq.org/docs/ (дата обращения: 01.09.2016).
[10] Team Sikuli Doc. Sikuli Documentation. — 2012. — Режим доступа: http://doc.sikuli.org/ (дата обращения: 01.09.2016).
[11] Wikipedia. Ranorex. —Режим доступа: https://en.wikipedia.org/wiki/Ranorex (дата обращения: 01.09.2016).
[12] Wikipedia. SoapUI.—Режим доступа: https://en.wikipedia.org/wiki/SoapUI (дата обращения: 01.09.2016).
[13] Wikipedia. TestComplete. — Режим доступа: https://en.wikipedia.org/wiki/TestComplete (дата обращения: 01.09.2016).


Работу высылаем на протяжении 30 минут после оплаты.




©2025 Cервис помощи студентам в выполнении работ