Введение
1 Обзор современных подходов к процессу тестирования и его автоматизации 14
1.1 Тестирования программного обеспечения 14
1.1.1 Определение тестирования 14
1.1.2 Место тестирования в процессе разработки программного обеспечения 16
1.1.3 Различные подходы к тестированию 19
1.2 Количественные критерии качества тестирования 22
1.3 Модульное тестирование 27
1.3.1 Способы тестирования взаимодействия модулей 28
1.3.2 Стратегии выполнения пошагового тестирования 29
Нисходящее тестирование 29
Восходящее тестирование 31
1.3.3 Принципы тестирования структуры программных модулей 32
Показатели корректности тестирования структуры программных модулей 33
Оценка достигаемой корректности программ 35
1.4 Регрессионное тестирование 38
1.5 Автоматизированное тестирование 40
1.5.1 Unit-тестирование 40
1.5.2 Программные средства автоматизации тестирования 42
1.6 Выводы 47
1.6.1 Актуальность темы 47
1.6.2 Цель работы 49
2 Метод ключевых состояний автоматизации тестирования программных приложений 51
2.1 Описание метода и методики его применения 51
2.2 Разработка математической модели контекстного представления множества произвольных состояний 57
2.3 Разработка метода формирования множества понятий предметной области (кластеров) 62
2.4 Разработка метода классификации контекстных групп 68
2.5 Разработка метода контекстного распознавания архитипических систем 74
2.6 Теоретическое обоснование преимуществ разработанного метода .. 75
2.7 Язык описания тестов 79
2.7.1 Скрипт 79
2.7.2 Акции (действия) 80
2.7.3 Состояния 81
2.7.4 Проверка множества состояний 84
2.7.5 Динамические состояния 85
2.7.6 Динамические коллекции состояний 86
2.7.7 Сохранение состояния 87
2.7.8 Процедуры 88
Создание объектов 89
Удаление объектов 91
Изменение свойств объектов 92
2.7.9 Фабрики состояний 93
2.7.10 Фильтры состояний 94
2.7.11 Модификаторы параметров состояний 96
2.7.12 Примеры 98
Пример простейшего скрипта 98
Пример декларации действия 115
Примеры определения состояния 116
Пример описания проверки 117
Пример процедуры 119
2.8 Система поддержки автоматизированных тестов 121
2.9 Расширение нового метода автоматизации тестирования 125
3 Результаты применения разработанных методов 128
3.1 Анализ применения разработанных методов и средств 128
3.2 Выводы 135
Заключение 139
Литература


