Тема: Автоматическая генерация тестовых сценариев для систем с конечными состояниями
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
Глава 1. Процесс тестирования программного обеспечения на проектах 5
1.1. Типы тестирования 5
1.2. Вспомогательные средства тестирования 7
Глава 2. Тестирование на основе модели как основной источник получения тестовых сценариев 10
2.1. Описание тестирования на основе модели 10
2.2. Постановка задачи 12
2.3. Моделирование системы с помощью UML диаграмм 12
2.4. Моделирование программы AppChecker с помощью диаграмм состояний 15
3. Реализация генератора тестовых сценариев 20
3.1. Определение основной функциональности 20
3.2. Разработка программы генерации тест кейсов 21
3.3. Описание работы программы 25
3.4. Результаты работы программы 26
3.5. Оценка созданного тестового комплекта 26
Заключение 29
Список использованных источников 30
Приложение 1. Описание UML модели программы AppChecker с помощью XMI 32
Приложение 2. Код класса TestCaseBuilder 36
Приложение 3. Код класса XMIParser
📖 Введение
Сложность разработки ПО также предполагает большую сложность его тестирования. В ходе тестирования инженер, изучая техническую документацию системы, должен решить, что, как, когда и каким образом он будет тестировать. На данном этапе стоит выбор между различными методологиями тестирования, которые применимы для разрабатываемого продукта и, с помощью которых можно уложиться во временные и стоимостные рамки проекта.
Одной из таких методологий является методология тестирования на основе модели (MBT). Эта методология предполагает полную или частичную формализацию проекта в виде модели для последующего анализа средствами автоматического тестирования. Современные инструменты ведения проектов чаще всего позволяют с помощью одного инструмента создавать модель системы по созданному программному коду, а затем, по сгенерированным тестовым последовательностям, с помощью специальных программ, автоматически оценить качество программы (UniTesK, HP UFT). Однако данные инструменты, помимо огромной стоимости лицензии, имеют ряд существенных недостатков. Для их поддержки зачастую требуется большая инфраструктура, состоящая из отдельных серверов и баз данных, а также необходимы специалисты, способные работать с данными инструментами. К тому же, лишь небольшое число из общей массы проектов необходим весь функционал таких сложных систем тестирования.
Тестировщик при создании тестовых последовательностей вручную руководствуется формальной спецификацией системы, но при этом, у него складывается собственное видение данной системы, что может негативно сказаться на качестве тестирования. Для обеспечения качественного ручного тестирования необходимо обеспечить создание качественных тестовых последовательностей. Этого можно добиться с помощью применения части методологии MBT, которая отвечает за построение модели по строгой формальной спецификации и автоматическую генерацию тестовых последовательностей на ее основе.
Таким образом объектом исследования стал процесс автоматизации ручного тестирования программного обеспечения, а предметом - механизм генерации тестовых последовательностей на основе моделей систем.
Целью работы является анализ возможности тестирования ПО с помощью автоматически сгенерированных тестовых сценариев. Для достижения цели необходимо рассмотреть процесс тестирования на основе модели, определить формат создания модели, разработать алгоритм генерации тестовых последовательностей и проанализировать их качество.
В ходе решения поставленных задач было разработано приложение, позволяющее генерировать тест-кейсы. С помощью данных тестовых последовательностей было создано два тестовых комплекта для тестирования приложения с графическим интерфейсом AppChecker.
✅ Заключение
Представление системы в виде UML модели состояний дает возможность использовать механизмы экспорта модели в формат XMI, который позволяет импортировать и распознать их в виде графа состояний. Диаграммы состояний отлично подходят для автоматической генерации тестовых сценариев, так как содержат всю необходимую для создания тест-кейсов информацию.
Язык Java используемый в ходе работы позволил реализовать мультиплатформенный инструмент с графическим интерфейсом для обработки UML диаграмм в виде XMI файлов, а также генерацию тестовых последовательностей. Созданные тест комплекты для приложения AppChecker позволяют обеспечить полную проверку функциональности программы в рамках графического интерфейса. Предложения по оптимизации тестового набора в случае автоматической генерации могут быть использованы для тестирования более сложных и комплексных инструментов.
Выводы, сделанные в ходе исследования позволяют сделать вывод о возможности ручного тестирования приложений с помощью автоматически сгенерированных тестовых сценариев на основе модели. Данная методика показала возможность эффективного построения тест-кейсов для систем, описанных в виде модели с конечным числом состояний.



