ВВЕДЕНИЕ 4
ГЛАВА l АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 6
1.1 Исследование видов IT-проекта 6
1.2 Методы проектирования и создания тест-кейсов 12
1.2.1 Доменный анализ 13
1.2.2 Тестирование парных значений 17
1.2.3 Таблицы принятия решений 20
1.2.4 Диаграмма состояний и переходов 21
1.3 Инструменты для создания тест-кейсов 24
1.4 Исследовательское тестирование 27
Вывод 28
ГЛАВА 2 ОБОБЩЕННЫЙ АЛГОРИТМ ОПРЕДЕЛЕНИЯ НАБОРА
ИНСТРУМЕНТОВ ТЕСТИРОВАНИЯ ПО 29
2.1 Описание алгоритма 29
2.2 Формальная постановка задачи 34
2.2.1 Классическая задача о рюкзаке 34
2.3 Оценка тестирования 36
2.3.1 Оценка времени на проектирования и создание тестовых случаев . 37
2.3.2 Оценка времени на проверку тестовых случаев 39
2.4 Документация в проекте 40
Вывод 42
ГЛАВА 3 ПРИМЕНЕНИЕ АЛГОРИТМА ПОСТРОЕНИЯ ТЕСТ-
КОМПЛЕКТА НА РЕАЛЬНЫХ ЗАДАЧАХ 43
3.1 Проект А. Веб-приложения для государственного учреждения 43
3.2 Проект Б. Мобильное приложение 47
3.3 Проект В. Чат-бот в Telegram 50
3.4 Проект Г. «Сайт агрегатор для бронирования и покупки» 53
Вывод 57
ЗАКЛЮЧЕНИЕ 58
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ 60
Качество программного продукта определяется по нескольким критериям. Качественный программный продукт должен отвечать функциональным и нефункциональным требованиям, в соответствии с которыми он создавался, иметь ценность для бизнеса, отвечать ожиданиям пользователей.
В жизненном цикле управления приложениями качество должно отслеживаться на всех этапах жизненного цикла ПО. Оно начинает формироваться с определения необходимых требований. При задании требований необходимо указывать желаемую функциональность и способы проверки её достижения.
Качественный программный продукт должен обладать высоким потребительским качеством, независимо от области применения: внутреннее использование разработчиком, бизнес, наука и образование, медицина, коммерческие продажи, социальная сфера, развлечения, веб и др. Для пользователя программный продукт должен удовлетворять определенному уровню его потребностей.
Тестирование программного продукта позволяет на протяжении всего жизненного цикла ПО гарантировать, что программные проекты отвечают заданным параметрам качества. Главная цель тестирования - определить отклонения в реализации функциональных требований, обнаружить ошибки в выполнении программ и исправить их как можно раньше в процессе выполнения проекта.
На протяжении всего жизненного цикла разработки ПО применяются различные типы тестирования для гарантии того, что промежуточные версии отвечают заданным показателям качества. При этом применяются автоматические и ручные тесты.
Каждый специалист по качеству сталкивается с проблемой становления процесса тестирования. Особенно это наблюдается в молодых компаниях, стартапах.
Актуальность задачи формирования тест-комплекта объясняется тем, что становится существенной проблема оформления тестовых случаем. Данная проблема влияет на оценку тестирования, и в свою очередь на качество продукта.
Учитывая вышесказанное, новизна данной работы заключается в использовании алгоритма с пошаговым оцениванием времени на использование тех или иных инструментов для тестирования ПО.
Существенной проблемой становится оформление тест-кейсов и оценка времени тестирования приложения.
Объектом диссертационного исследования является процесс обеспечения качества продуктов IT-компании.
Предмет исследования - инструменты тестирования ПО.
Цель диссертационного исследования состоит в создании инструментария для определения оптимального набора тест-комплекта IT- проекта.
Поставленная цель достигается путем решения следующих задач:
1. Исследование особенностей и классификация видов IT-проектов.
2. Анализ современных инструментов тестирования, позволяющих ускорить создание тестовой документации.
3. Разработка алгоритмов построения тест-комплекта, обеспечивающих минимизацию использования ресурсов разработчика.
4. Формальная постановка задачи формирования тест-комплекта.
5. Применение предлагаемых инструментов на реальных проектах.
В данной диссертационной работе было проведено исследование классификации IT-проектов, были выбраны инструменты тестирования и методы проектирования тестовых случаем, также разработан алгоритм для выбора оптимального тест-комплекта, приведены результаты использования алгоритма.
В первой главе рассматриваются различные типы проектов, а также методы проектирования и написания тестовых случаев.
Рассмотренные методы проектирования являются базовыми в тест- анализе. Так же для них необходим низкий порог входа, что позволяет тестировщикам любой квалификации использовать их. Одним из результатов было участие в II научно-практической конференции аспирантов с темой «Чек-листы и чит-листы как инструмент тестирования»
Касательно классификации IT-проектов, то для оценки тестирования необходимо знать о времени и бюджете проектов, чему удовлетворяет деление по масштабу и длительности.
Во второй главе описан алгоритм, позволяющий получить полную оценку тестирования, разбитую на этапы и набор инструментов для формирования тестового комплекта. Формальная постановка задачи позволяет автоматизировать процесс оценки тестирования.
Также из описанных методов оценки проектирования был выбран - метод грубой экспертной оценки. Данный метод не привязывается к количеству тестировщиков на проекте и является быстрым в применении.
Для оценки времени выполнения тестов был выбран метод индуктивной оценки. Данный метод учитывает не только время на проверку тестовых случаев, но время на подготовку окружения и ознакомления с системой (если вы тестируете продукт в первый раз).
В третьей главе приведены результаты использования алгоритма. Разработанный алгоритм позволяет дать оценку, которая совпадет с погрешностью 10-15% с реальным временем тестирования.
При накоплении данных, в дальнейшем можно улучшить алгоритм изменив проценты отбрасывания методом и инструментов на каждом этапе, а также модифицировать методы оценки.