- •Методические указания
- •Для студентов специальности 6.050102
- •Всех форм обучения
- •1.Разработка технического задания. Лабораторная работа № 1
- •1.1 Теоретические сведения
- •1.2 Задание на лабораторную работу
- •1.3 Список контрольных вопросов
- •2.Оформление программной документации. Лабораторная работа № 2
- •2.1 Теоретические сведения
- •2.2 Задание на лабораторную работу
- •2.3 Список контрольных вопросов
- •3. Расчет метрик холстеда. Лабораторная работа № 3
- •3.1 Описание метрик Холстеда
- •3.2 Пример определения характеристик программы
- •3.3 Порядок выполнения работы
- •3.4 Список контрольных вопросов
- •4. Оптимизация программ. Лабораторная работа № 4
- •4.1 Теоретические сведения
- •4.2 Порядок выполнения работы
- •4.3 Список контрольных вопросов
- •5. Структурное тестирование. Лабораторная работа № 5
- •5.1 Задачи и методы тестирования
- •5.2 Структурное тестирование
- •5. 3 Выполнение работы
- •5.5 Список контрольных вопросов
- •6. Метод эквивалентных разбиений. Лабораторная работа № 6
- •6.1 Теоретические сведения
- •6.2 Выделение классов эквивалентности
- •6.3 Построение тестов
- •6.4 Порядок выполнения работы
- •6.5 Список контрольных вопросов
- •7. Метод функциональных диаграмм. Лабораторная работа n 7
- •7.1 Особенности метода функциональных диаграмм
- •7.2 Базовые символы для записи функциональных диаграмм
- •7.3 Пример построения функциональной диаграммы
- •7.4 Преобразование функциональной диаграммы в таблицу решений и построение тестов
- •7.5 Порядок выполнения работы
- •7.6 Список контрольных вопросов
- •8. Расстановка контрольных точек. Лабораторная работа №8
- •8.1 Теоретические сведения
- •8.2 Порядок выполнения работы
- •8.3 Список контрольных вопросов
- •9. Мутационный анализ. Лабораторная работа № 9
- •9.1 Теоретические сведения
- •9.2 Описание мутаций
- •9.3 Порядок выполнение работы
- •9.4 Список контрольных вопросов
- •10. Оценка надежности программ. Лабораторная работа № 10
- •10.1 Теоретические сведения
- •10.2 Порядок выполнения работы
- •10.3 Список контрольных вопросов
- •11. Определение показателей качества программного средства. Лабораторная работа № 11
- •11.1 Теоретические сведения
- •11.2 Номенклатура показателей качества
- •11.3 Методы оценки уровня качества пс
- •11.3 Порядок выполнения работы
- •11.5 Содержание отчета
- •11.6 Список контрольных вопросов
- •12. Расчет метрик чидамбера-кемерера. Лабораторная работа № 12
- •12.1 Теоретические сведения
- •12.2 Использование метрик Чидамбера-Кемерера
- •12.3 Порядок выполнения работы
- •12.4 Содержание отчета о выполнении работы
- •12.5 Список контрольных вопросов
8.2 Порядок выполнения работы
1. Для индивидуального модуля постpоить схему алгоpитма в виде упpавляющего оpиeнтиpованного гpафа.
2. Выделить остов Т гpафа и отметить множество хорд коостова Т*
3. Определить множество базисных циклов, каждый из которых включает ровно одну хорду.
4. Расставить контрольные точки в дугах коостова. Определить, где эти точки должны быть в тексте модуля и вставить в текст операторы вывода координат точки.
5. Подготовить такой набор тестов, чтобы можно было проверить выполнение всех полных маршрутов графа модуля.
6. Выполнить модуль для различных тестов.
7. По результатам выполнения контрольных точек построить линейную комбинацию базисных циклов, однозначно определяющую выполненный маршрут.
8. Провести анализ полученных результатов.
9. Оформить отчет.
Содержание отчета:
- схема модуля;
- перечень контрольных точек;
- набор входных тестов;
- множество базисных циклов;
- маршруты выполнения модуля;
- выводы.
8.3 Список контрольных вопросов
1. Для чего предназначен метод контрольных точек?
2. Какую информацию содержат результаты выполнения программ?
3. Какой остов целесообразно выбрать из множества остовов программного модуля?
4. Каковы недостатки метода контрольных точек?
9. Мутационный анализ. Лабораторная работа № 9
Цель работы - определение способности тестового набора обнаруживать ошибки на основе мутационного анализа, оценка качества тестового набора, определение множества потенциальных ошибок в тестируемой программе, не обнаруживаемых заданным набором тестов.
9.1 Теоретические сведения
Мутационный анализ заключается в определении множества потенциальных ошибок в тестируемой программе, не обнаруживаемых заданным набором тестов, путем внесения в программу поочередно большого числа искусственных ошибок (мутаций).
Тест, хорошо обнаруживающий искусственные потенциальные ошибки, будет надежен и для реальных ошибок. Ошибка считается обнаруженной, если результат выполнения некоторым тестом программы с ошибкой отличается от результата выполнения эталонной программы.
Список необнаруженных потенциальных ошибок, выдаваемый в результате мутационного анализа, является непосредственной мерой надежности набора тестов.
Рассматриваемая программа Р представляет собой множество N операторов, каждый из которых может содержать потенциальную ошибку. Пусть Рm - программа, содержащая только одну ошибку m из набора ошибок M. Тогда выполнение набора тестов t каждой из M ошибочных программ Pm определит подмножества обнаруженных Dt и необнаруженных Lt ошибок. Если оператор программы содержит хотя бы одну необнаруженную потенциальную ошибку, его называют потенциально ошибочным, в противном случае - надежно проверяемым. Надежность набора тестов t для программы будет определяться как множеством Lt необнаруженных потенциальных ошибок, так и множеством Nt потенциально ошибочных операторов.
Относительное число обнаруженных потенциальных ошибок:
St = 1 - Lt/M (1)
Относительное число надежно проверенных операторов:
Qt = 1 - Nt/N. (2)