ИССЛЕДОВАНИЕ И РАЗРАБОТКА МЕТОДОВ ИНТЕЛЛЕКТУАЛЬНОГО ТЕСТИРОВАНИЯ ПРОГРАММНЫХ ПРОДУКТОВ
|
ВВЕДЕНИЕ 4
1 Описание предметной области 7
1.1 Характеристика предприятия 7
1.2 Место тестирования в разработке программного обеспечения 9
1.3 Виды тестирования 12
1.4 Понятие тестового сценария 22
1.5 Выводы по первому разделу 25
2 Построение системы интеллектуального тестирования 26
2.1 Выбор инструмента автоматизации 26
2.2 Проектирование автоматизированной системы тестирования 35
2.3 Выводы по второму разделу 38
3 Программная реализация системы 39
3.1 Создание структуры автотеста 39
3.2 Настройка ActionBuilder 40
3.3 Создание структуры проекта 42
3.4 Создание автотеста 46
3.5 Тестирование программы 49
3.6 Обоснование экономической эффективности 50
3.7 Выводы по третьему разделу 56
ЗАКЛЮЧЕНИЕ 57
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1 Описание предметной области 7
1.1 Характеристика предприятия 7
1.2 Место тестирования в разработке программного обеспечения 9
1.3 Виды тестирования 12
1.4 Понятие тестового сценария 22
1.5 Выводы по первому разделу 25
2 Построение системы интеллектуального тестирования 26
2.1 Выбор инструмента автоматизации 26
2.2 Проектирование автоматизированной системы тестирования 35
2.3 Выводы по второму разделу 38
3 Программная реализация системы 39
3.1 Создание структуры автотеста 39
3.2 Настройка ActionBuilder 40
3.3 Создание структуры проекта 42
3.4 Создание автотеста 46
3.5 Тестирование программы 49
3.6 Обоснование экономической эффективности 50
3.7 Выводы по третьему разделу 56
ЗАКЛЮЧЕНИЕ 57
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
Автоматизированное тестирование является неотъемлемой частью современного подхода к разработке программного обеспечения. Организация системы автоматического тестирования позволяет идентифицировать ошибки функциональности и дизайна приложения на всех этапах его создания [19].
Преимущества, которые предоставляет система [18]:
- При любом изменении, внесенном программистом в код, запускается тестовый сценарий, проверяющий корректную работу прежней и новой функциональности. Таким образом, разработчик всегда уверен в том, что его действия не повлекли за собой ошибок работы приложения. А если ошибка возникла, то отчёт о прохождении тестов позволит точно идентифицировать место и причину сбоя.
- Автоматизированное тестирование значительно сокращает время разработки ПО, так как заменяет процесс ручного тестирования. Кроме того, автономные тесты способны работать для разных форм и приложений. Таким образом, один раз написанный тест может служить инструментом для поиска ошибок многократно.
- Случайный подход генерации данных, используемых в тестах, позволяет найти непредвиденные ошибки. Так как очень часто машина способна сгенерировать тестовый пример, который ручной тестировщик мог не предусмотреть.
- История прохождения тестов на разных этапах разработки даёт ценную статистическую информацию: среднее количество ошибок при разработке одной формы, прохождении одного спринта (если речь идёт о компаниях, поддерживающих гибкие методологии разработки), за всё время создания продукта; время, потраченное на исправление ошибок; типы ошибок, их процентное соотношение. Такого рода информация может быть представлена заказчику, а также активно использоваться при дальнейшей разработке, чтобы на её основании улучшить процесс, устраняя недостатки предыдущих релизов. Кроме того, информация может быть использована при прохождении проверок компании на соответствие тому или иному мировому стандарту.
Не смотря на все перечисленные преимущества автоматизированного тестирования, в большинстве компаний, занимающихся разработкой программного обеспечения, понятие ручного тестирования не превратилось в атавизм. Это происходит из-за того, что создание подобной системы является нетривиальной и очень специфической задачей. В зависимости от функциональности разрабатываемого программного обеспечения, языков и средств программирования, задача организации системы кардинально меняется, приобретая свои персональные проблемы.
Целью данной работы является повышение эффективности тестирования программного обеспечения IT-компании за счет разработки автоматизированной системы тестирования для продукта АЦК-Финансы, а также корректирования общего плана процесса разработки с учётом создания данной системы.
Задачи включают в себя:
- изучение теоретических данных по тестированию и автоматизированному тестированию;
- изучение основных фреймворков для написания автотестов и выбор оптимального;
- моделирование системы автоматизированного тестирования;
- программная реализация системы;
- оценка экономической эффективности данной разработки.
Объектом исследования данной работы является процесс автоматического тестирования приложения АЦК-Финансы.
Предмет исследования - программное приложение АЦК-Финансы, методы написания автотестов, модель работы системы автоматизированного тестирования.
Практическое значение создаваемой системы заключается в высвобождении человеческих ресурсов и увеличении экономического эффекта производимых тестовых операций.
Новизна магистерской диссертации заключается в разработке оригинального средства тестирования, которое позволит повысить эффективность работы компании за счет следующего:
- сокращения времени процесса тестирования;
- сокращения количества специалистов по тестированию;
- экономии денежных средств за счет уменьшения затрат на заработную плату.
Магистерская диссертаци состоит из 3 разделов:
- аналитическая часть - в данном разделе будет рассмотрен процесс автоматизированного тестирования, его место и роль в жизненном цикле программного обеспечения;
- построение системы - в данном разделе будут изучены основные системы написание автоматических тестовых сценариев и обоснован выбор среды, используемой в данной разработке, а также создана модель автоматизированной системы;
- проектная часть - в данном разделе будет представлен процесс разработки и анализа автоматического теста, также будет наглядно представлена экономическая эффективность от внедрения данной системы;
Магистерская диссертация написана на 64 страницах. Она включает в себя 21 рисунок, 3 таблицы и 4 формулы.
По окончании исследования планируется получение настраиваемой и функциональной системы автоматизированного тестирования.
Преимущества, которые предоставляет система [18]:
- При любом изменении, внесенном программистом в код, запускается тестовый сценарий, проверяющий корректную работу прежней и новой функциональности. Таким образом, разработчик всегда уверен в том, что его действия не повлекли за собой ошибок работы приложения. А если ошибка возникла, то отчёт о прохождении тестов позволит точно идентифицировать место и причину сбоя.
- Автоматизированное тестирование значительно сокращает время разработки ПО, так как заменяет процесс ручного тестирования. Кроме того, автономные тесты способны работать для разных форм и приложений. Таким образом, один раз написанный тест может служить инструментом для поиска ошибок многократно.
- Случайный подход генерации данных, используемых в тестах, позволяет найти непредвиденные ошибки. Так как очень часто машина способна сгенерировать тестовый пример, который ручной тестировщик мог не предусмотреть.
- История прохождения тестов на разных этапах разработки даёт ценную статистическую информацию: среднее количество ошибок при разработке одной формы, прохождении одного спринта (если речь идёт о компаниях, поддерживающих гибкие методологии разработки), за всё время создания продукта; время, потраченное на исправление ошибок; типы ошибок, их процентное соотношение. Такого рода информация может быть представлена заказчику, а также активно использоваться при дальнейшей разработке, чтобы на её основании улучшить процесс, устраняя недостатки предыдущих релизов. Кроме того, информация может быть использована при прохождении проверок компании на соответствие тому или иному мировому стандарту.
Не смотря на все перечисленные преимущества автоматизированного тестирования, в большинстве компаний, занимающихся разработкой программного обеспечения, понятие ручного тестирования не превратилось в атавизм. Это происходит из-за того, что создание подобной системы является нетривиальной и очень специфической задачей. В зависимости от функциональности разрабатываемого программного обеспечения, языков и средств программирования, задача организации системы кардинально меняется, приобретая свои персональные проблемы.
Целью данной работы является повышение эффективности тестирования программного обеспечения IT-компании за счет разработки автоматизированной системы тестирования для продукта АЦК-Финансы, а также корректирования общего плана процесса разработки с учётом создания данной системы.
Задачи включают в себя:
- изучение теоретических данных по тестированию и автоматизированному тестированию;
- изучение основных фреймворков для написания автотестов и выбор оптимального;
- моделирование системы автоматизированного тестирования;
- программная реализация системы;
- оценка экономической эффективности данной разработки.
Объектом исследования данной работы является процесс автоматического тестирования приложения АЦК-Финансы.
Предмет исследования - программное приложение АЦК-Финансы, методы написания автотестов, модель работы системы автоматизированного тестирования.
Практическое значение создаваемой системы заключается в высвобождении человеческих ресурсов и увеличении экономического эффекта производимых тестовых операций.
Новизна магистерской диссертации заключается в разработке оригинального средства тестирования, которое позволит повысить эффективность работы компании за счет следующего:
- сокращения времени процесса тестирования;
- сокращения количества специалистов по тестированию;
- экономии денежных средств за счет уменьшения затрат на заработную плату.
Магистерская диссертаци состоит из 3 разделов:
- аналитическая часть - в данном разделе будет рассмотрен процесс автоматизированного тестирования, его место и роль в жизненном цикле программного обеспечения;
- построение системы - в данном разделе будут изучены основные системы написание автоматических тестовых сценариев и обоснован выбор среды, используемой в данной разработке, а также создана модель автоматизированной системы;
- проектная часть - в данном разделе будет представлен процесс разработки и анализа автоматического теста, также будет наглядно представлена экономическая эффективность от внедрения данной системы;
Магистерская диссертация написана на 64 страницах. Она включает в себя 21 рисунок, 3 таблицы и 4 формулы.
По окончании исследования планируется получение настраиваемой и функциональной системы автоматизированного тестирования.
В ходе исследования были выявлены множественные преимущества робота перед человеком в вопросах тестирования программного обеспечения. Выбраны методы технического анализа, которые будут положены в основу написания автотеста. Произведен анализ наиболее популярных методов.
В ходе разработки были решены следующие задачи:
- изучение теоретических данных по тестированию и автоматизированному тестированию;
- изучение основных фреймворков для написания автотестов и выбор оптимального;
- моделирование системы автоматизированного тестирования;
- программная реализация системы;
- оценка экономической эффективности данной разработки.
Результатом выполнения магистерской диссертации является разработка автоматизированной системы тестирования программного обеспечения. Благодаря данной системе повысилась эффективность работы компании, а именно:
- сократилось время процесса тестирования;
- сократилось количество специалистов по тестированию;
- уменьшились затраты денежных средств на заработную плату.
Автоматизированная система тестирования может быть использована с большой пользой, благодаря следующим ее качества:
- выполнение тестовых операций с наименьшим участием человека;
- высокая скорость обработки информации;
- возможность решения новых задач.
В настоящий момент система полностью реализована. Процесс написания тестовых сценариев максимально упрощен. Им занимается уже целая команда тестировщиков. Автоматические тесты помогают найти
большой процент программных багов и сократить трудозатраты на ручной прогон сценариев.
Продолжая тему максимальной автоматизации, в будущем планируется работа по внедрению системы автоматического создания тестовых багов по отчету о прохождении тестов. В настоящий момент для того, чтобы известить разработчиков о возникшей ошибке тестировщикам приходится вручную просматривать тестовые отчёты и создавать задачи по их исправлению. В будущем этот процесс планируется автоматизировать. Проблемы возникают лишь с определением того, на кого назначать эту работу. Обычно тестировщики сами знают, кто из разработчиков занимался той или иной функциональностью и сами решают на кого назначать работу. При автоматизированном подходе придётся немного изменить и сам процесс разработки, для того, чтобы эту информацию можно было бы извлечь непосредственно из программного кода.
В ходе разработки были решены следующие задачи:
- изучение теоретических данных по тестированию и автоматизированному тестированию;
- изучение основных фреймворков для написания автотестов и выбор оптимального;
- моделирование системы автоматизированного тестирования;
- программная реализация системы;
- оценка экономической эффективности данной разработки.
Результатом выполнения магистерской диссертации является разработка автоматизированной системы тестирования программного обеспечения. Благодаря данной системе повысилась эффективность работы компании, а именно:
- сократилось время процесса тестирования;
- сократилось количество специалистов по тестированию;
- уменьшились затраты денежных средств на заработную плату.
Автоматизированная система тестирования может быть использована с большой пользой, благодаря следующим ее качества:
- выполнение тестовых операций с наименьшим участием человека;
- высокая скорость обработки информации;
- возможность решения новых задач.
В настоящий момент система полностью реализована. Процесс написания тестовых сценариев максимально упрощен. Им занимается уже целая команда тестировщиков. Автоматические тесты помогают найти
большой процент программных багов и сократить трудозатраты на ручной прогон сценариев.
Продолжая тему максимальной автоматизации, в будущем планируется работа по внедрению системы автоматического создания тестовых багов по отчету о прохождении тестов. В настоящий момент для того, чтобы известить разработчиков о возникшей ошибке тестировщикам приходится вручную просматривать тестовые отчёты и создавать задачи по их исправлению. В будущем этот процесс планируется автоматизировать. Проблемы возникают лишь с определением того, на кого назначать эту работу. Обычно тестировщики сами знают, кто из разработчиков занимался той или иной функциональностью и сами решают на кого назначать работу. При автоматизированном подходе придётся немного изменить и сам процесс разработки, для того, чтобы эту информацию можно было бы извлечь непосредственно из программного кода.
Подобные работы
- Оценка стоимости программного обеспечения как объекта интеллектуальной собственности
Магистерская диссертация, экономика. Язык работы: Русский. Цена: 4965 р. Год сдачи: 2016 - Исследование методов и технологий автоматизированного тестирования облачного IT-продукта, построенного на микросервисной архитектуре
Магистерская диссертация, информационные системы. Язык работы: Русский. Цена: 5450 р. Год сдачи: 2021 - Разработка программного обеспечения, осуществляющего учет и контроль
сделок пользователя (на фондовой бирже
Бакалаврская работа, программирование. Язык работы: Русский. Цена: 4940 р. Год сдачи: 2016 - РАЗРАБОТКА МЕТОДОВ И АЛГОРИТМОВ ДЛЯ РЕШЕНИЯ ЗАДАЧ СЕЛЕКЦИИ С ИСПОЛЬЗОВАНИЕМ НЕЙРОННЫХ СЕТЕЙ
Дипломные работы, ВКР, информатика. Язык работы: Русский. Цена: 4390 р. Год сдачи: 2018 - АНАЛИЗ И ОБОСНОВАНИЕ ВЫБОРА ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ
АВТОМАТИЗИРОВАННОЙ РАЗРАБОТКИ ПРИКЛАДНОГО ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ КОРПОРАТИВНЫХ ИНФОРМАЦИОННЫХ СИСТЕМ
Дипломные работы, ВКР, информатика. Язык работы: Русский. Цена: 4970 р. Год сдачи: 2018 - Разработка веб-приложения для учета обращений клиентов в службу поддержки фитнес-центра
Бакалаврская работа, информатика. Язык работы: Русский. Цена: 4270 р. Год сдачи: 2022 - ВЫБОР ПРОГРАММНЫХ ПРОДУКТОВ И ИНСТРУМЕНТОВ ДЛЯ ПОСТРОЕНИЯ БАЗЫ ЗНАНИЙ КОНСАЛТИНГОВОЙ КОМПАНИИ «SMART ARCHITECTS»
Бакалаврская работа, менеджмент. Язык работы: Русский. Цена: 4270 р. Год сдачи: 2023 - ВЫБОР ПРОГРАММНЫХ ПРОДУКТОВ И ИНСТРУМЕНТОВ ДЛЯ ПОСТРОЕНИЯ БАЗЫ ЗНАНИЙ КОНСАЛТИНГОВОЙ КОМПАНИИ «SMARTARCHITECTS»
Бакалаврская работа, менеджмент. Язык работы: Русский. Цена: 4300 р. Год сдачи: 2023 - Разработка математического и программного обеспечения медицинской аналитической системы
Дипломные работы, ВКР, информационные системы. Язык работы: Русский. Цена: 4650 р. Год сдачи: 2018



