231000 Тестиров Программного Обеспечения

advertisement
1.
Цели и задачи дисциплины
1.1. Цель. Задачи дисциплины, ее место в подготовке бакалавра (с учетом
квалификационных требований ФГОС)
Рабочая программа по дисциплине «Тестирование программного обеспечения» составлена в
соответствии с требованиями ФГОС ВПО по направлению 231000 «Программная инженерия» и относится к
циклу профессиональных дисциплин (Б3).
Учебная дисциплина «Тестирование программного обеспечения» предназначена для ознакомления с
основными видами и методами тестирования программного обеспечения (ПО) при структурном и объектноориентированном подходе в программировании.
Целью курса «Тестирование программного обеспечения» является изучение теоретических основ,
верификации (проверки), модульного тестирования, интеграционного тестирования и отладки. В указанном
курсе обучаемые должны приобрести устойчивые знания в области выбора и применения программной
инженерии для задач автоматизации обработки информации и управления.
1.2.
Требования к уровню усвоения дисциплины
Обучающийся должен знать основы верификации и аттестации программного обеспечения; приемы
отладки и ручного тестирования программного обеспечения;
отличительные особенности системного, нагрузочного и предельного тестирования информационных систем;
модель оценки степени тестированности программного продукта.
Обучающийся должен уметь инсталировать, тестировать, испытывать и использовать программные
средства; уметь строить управляющий граф программы для тестирования; оценить сложность тестирования
программного продукта с использованием математической модели.
Обучающийся должен иметь представление о различных методах ручного и автоматического
тестирования ПО, разработке эффективных наборов тестов для простых и крупных информационных систем.
Обучающийся должен владеть навыками построения автоматических и ручных тестов для отслеживания
корректности работы разрабатываемого программного обеспечения.
У обучающегося должны быть сформированы следующие общекультурные компетенции (ОК) и
профессиональные компетенции (ПК): ПК-20, ПК-21, ПК-23, ПК-25
- навыки проведения практических занятий с пользователями программных систем (ПК-20);
- навыки использования операционных систем, сетевых технологий, средств разработки программного
интерфейса, применения языков и методов формальных спецификаций, систем управления базами данных
(ПК-21);
- понимание методов управления процессами разработки требований, оценки рисков, приобретения,
проектирования, конструирования, тестирования, эволюции и сопровождения (ПК-23);
- понимание методов контроля проекта и умение осуществлять контроль версий (ПК-25).
1.3.
Связь с другими дисциплинами Учебного плана
Перечень действующих и предшествующих дисциплин
Алгоритмы и структуры данных, Информатика и
программирование,
Введение
в
программную
инженерию,
Конструирование
программного
обеспечения
Перечень последующих дисциплин, видов работ
Программирование
технических
средств
информационных систем, Функциональное и
логическое программирование, Разработка и анализ
требований, Управление программными проектами
2. Содержание дисциплины, способы и методы учебной
деятельности преподавателя
Методы обучения – система последовательных, взаимосвязанных действий, обеспечивающих усвоение
содержания образования, развитие способностей обучающихся, овладение ими средствами самообразования
и самообучения; обеспечивают цель обучения, способ усвоения и характер взаимодействия преподавателя и
обучающегося; направлены на приобретение знаний, формирование умений, навыков, их закрепление и
контроль.
Монологический (изложение теоретического материала в форме монолога)
М
Показательный (изложение материала с приемами показа)
П
Диалогический (изложение материала в форме беседы с вопросами и ответами)
Д
Эвристический (частично поисковый) (под руководством преподавателя обучающиеся
рассуждают, решают возникающие вопросы, анализируют, обобщают, делают выводы и
решают поставленную задачу)
Э
Проблемное изложение (преподаватель ставит проблему и раскрывает доказательно пути
ее решения)
ПБ
Исследовательский (обучающиеся самостоятельно добывают знания в процессе разрешения
проблемы, сравнивая различные варианты ее решения)
И
Программированный (организация аудиторной и самостоятельной работы обучающихся
осуществляется в индивидуальном темпе и под контролем специальных технических средств)
ПГ
24-30
7
7
24-27
3
3
28-30
4
4
31-41
11
11
31-33
3
3
Очная форма обучения
Лекции
Модуль 1 «Основы тестирования»
Тема «Вопросы организации тестирования»
Подходы к обоснованию истинности формул и программ и их
связь с тестированием. Понятия отладки и тестирования. Методы
поиска ошибок и процедура тестирования. Фазы тестирования,
основные проблемы тестирования.
Требования к идеальному критерию тестирования и классы
частных критериев. Особенности применения структурных и
функциональных критериев на базе конкретных примеров.
Особенности применения методов стохастического тестирования и
метод оценки скорости выявления ошибок.
Графовые
модели
проекта,
метрики
оценки
оттестированности проекта, примеры плоской и иерархической
моделей проекта.
Тема «Модульное и интеграционное тестирование»
Особенности модульного
тестирования, подходы к
тестированию на основе потока управления, потока данных.
Динамические и статические методы при структурном подходе.
Взаимосвязь сборки модулей и методов интеграционного
тестирования.
Подходы
монолитного,
инкрементального,
нисходящего
и
восходящего
тестирования.
Особенности
интеграционного тестирования в процедурном программировании.
Модель
объектно-ориентированной
программы,
использующая понятие P-путей и MM-путей. Оценки сложности
тестирования и методика тестирования объектно-ориентированной
программы.
Модуль 2 «Методы тестирования»
Тема «Системное и регрессионное тестирование. Автоматизация
тестирования»
Задачи и категории тестов, применяемые в системном
тестировании. Регрессионное тестирование и комбинирование
различных уровней тестирования.
Реализуемые
компетенции
Вид занятия, модуль, тема и краткое содержание
Методы
практические,
в том числе в
интерактивной
форме, час.
Аудиторные
занятия
(лекции,
лабораторные,
семинарские) – очная форма обучения
Кол. час
Неделя
2.1.
П, Д,
Э, ПБ
П, Д,
Э, ПБ
ПК-23
П, Д,
Э, ПБ
ПК-23
П, Д,
Э, ПБ
ПК-21,
ПК-23,
ПК-25
ПК-21,
ПК-23,
ПК-25
П, Д,
Э, ПБ
ПК-23
34-37
4
4
38-41
4
4
24-30
7
Структура тестового набора для автоматического прогона.
Структура инструментальной системы автоматизации тестирования.
Эффективность методов тестирования.
Тема «Особенности индустриального тестирования»
Подход к обеспечению качества программного продукта
средствами тестирования. Фазы процесса тестирования и шаги
тестового цикла, применяемые в индустриальном тестировании.
Структура документа «Тестовый план». Подходы к тестированию
спецификаций и сценариев. Ручной подход и подход генерации
тестовых наборов при разработке тестов. Методы автоматизации
исполнения тестов. Особенности документирования тестовых
процедур для ручных и автоматизированных тестов, описаний
тестовых наборов и тестовых отчетов.
Тема «Регрессионное тестирование: цели и задачи, методики,
алгоритм и программная система поддержки»
Виды регрессионного тестирования. Применение и
классификация методов выборочного регрессионного тестирования.
Возможности повторного использования тестов. Случайные методы,
безопасные методы, методы минимизации, методы, основанные на
покрытии кода. Интеграционное регрессионное тестирование и
регрессионное тестирование объектно-ориентированных программ.
Метод уменьшения объема тестируемой программы, методы
упорядочения тестов. Алгоритм регрессионного тестирования и
программная система его поддержки.
Лабораторные занятия
Модуль 1 «Основы тестирования»
24-27
3
Тема «Вопросы организации тестирования»
Описание тестируемой
Планирование тестирования
системы
и
ее
П, Д,
Э, ПБ
ПК-21,
ПК-23,
ПК-25
П, Д,
Э, ПБ
ПК-21,
ПК-23,
ПК-25
ПГ
ПК-20
ПГ
ПК-20
окружения.
28-30
4
Тема «Модульное и интеграционное тестирование»
Модульное тестирование на примере классов.
Интеграционное тестирование.
ПГ
ПК-20
31-41
11
Модуль 2 «Методы тестирования»
ПГ
ПК-20
31-33
3
Тема «Системное и регрессионное тестирование. Автоматизация
тестирования»
Системное тестирование.
Ручное тестирование.
ПГ
ПК-20
34-37
4
Тема «Особенности индустриального тестирования»
Автоматизация тестирования с помощью скриптов.
Автоматическая генерация тестов на основе формального
описания.
ПГ
ПК-20
38-41
4
Тема «Регрессионное тестирование: цели и задачи, методики,
алгоритм и программная система поддержки»
Описание автоматической генерации MSC тестов.
Использование MS Visio для генерации MPR-файлов.
ПГ
ПК-20
Аудиторные занятия (лекции, лабораторные, практические, семинарские) - заочная форма
обучения, срок подготовки 5 лет
Методы
Реализуемые
компетенции
в том числе в
интерактивной
форме, час.
Кол. час
Неделя
Вид занятия, модуль, тема и краткое содержание
Лекции
2
2
Тема «Вопросы организации тестирования»
Подходы к обоснованию истинности формул и программ и их
связь с тестированием. Понятия отладки и тестирования. Методы
поиска ошибок и процедура тестирования. Фазы тестирования,
основные проблемы тестирования.
Требования к идеальному критерию тестирования и классы
частных критериев. Особенности применения структурных и
функциональных критериев на базе конкретных примеров.
Особенности применения методов стохастического тестирования и
метод оценки скорости выявления ошибок.
Графовые
модели
проекта,
метрики
оценки
оттестированности проекта, примеры плоской и иерархической
моделей проекта.
Лабораторные занятия
Тема «Вопросы организации тестирования»
Описание тестируемой
Планирование тестирования
2
системы
и
ее
П, Д,
Э, ПБ
ПК-23
ПГ
ПК-20
ПГ
ПК-20
окружения.
Тема «Модульное и интеграционное тестирование»
Модульное тестирование на примере классов.
Интеграционное тестирование.
Методы
Вид занятия, модуль, тема и краткое содержание
Реализуемые
компетенции
в том числе в
интерактивной
форме, час.
Кол. час
Неделя
Аудиторные занятия (лекции, лабораторные, практические, семинарские) - заочная форма
обучения, срок подготовки 3 года 6 месяцев (в)
Лекции
2
2
Тема «Вопросы организации тестирования»
Подходы к обоснованию истинности формул и программ и их
связь с тестированием. Понятия отладки и тестирования. Методы
поиска ошибок и процедура тестирования. Фазы тестирования,
основные проблемы тестирования.
Требования к идеальному критерию тестирования и классы
частных критериев. Особенности применения структурных и
функциональных критериев на базе конкретных примеров.
Особенности применения методов стохастического тестирования и
метод оценки скорости выявления ошибок.
Графовые модели проекта, метрики оценки оттестированности
проекта, примеры плоской и иерархической моделей проекта.
Лабораторные занятия
Тема «Вопросы организации тестирования»
Описание
тестируемой
системы
и
ее
окружения.
П, Д,
Э, ПБ
ПК-23
ПГ
ПК-20
2
Планирование тестирования
Тема «Модульное и интеграционное тестирование»
Модульное тестирование на примере классов.
Интеграционное тестирование.
ПГ
ПК-20
Методы
Вид занятия, модуль, тема и краткое содержание
Реализуемые
компетенции
в том числе в
интерактивной
форме, час.
Неделя
Кол. час
Аудиторные занятия (лекции, лабораторные, практические, семинарские) - заочная форма
обучения, срок подготовки 3 года 6 месяцев (с)
Лекции
2
2
Тема «Вопросы организации тестирования»
Подходы к обоснованию истинности формул и программ и их
связь с тестированием. Понятия отладки и тестирования. Методы
поиска ошибок и процедура тестирования. Фазы тестирования,
основные проблемы тестирования.
Требования к идеальному критерию тестирования и классы
частных критериев. Особенности применения структурных и
функциональных критериев на базе конкретных примеров.
Особенности применения методов стохастического тестирования и
метод оценки скорости выявления ошибок.
Графовые модели проекта, метрики оценки оттестированности
проекта, примеры плоской и иерархической моделей проекта.
Лабораторные занятия
Тема «Вопросы организации тестирования»
Описание тестируемой
Планирование тестирования
2
ее
Тема «Модульное и интеграционное тестирование»
Модульное тестирование на примере классов.
Интеграционное тестирование.
ПГ
ПК-20
ПГ
ПК-20
окружения.
25
37
8
31-
4
использованию литературы и ЭВМ и др.
Самостоятельное изучение отдельных тем курса:
- Тестирование в модели жизненного цикла разработки ПО
- Cвязь проектирования и тестирования.
- Связь тестирования и качества разрабатываемого ПО.
- Документирование тестов и рабочего продукта (Test documentation and work products)
- Тестирование баз данных.
Тематика заданий для индивидуальной работы:
Описать назначение программ тестирования ПО:
- IBM Rational TestManager - управление тестированием;
- IBM Rational PurifyPlus (Purify, PureCoverage, Quantify) - анализ работы системы
в режиме RunTime;
- IBM Rational Robot - функциональное и нагрузочное тестирование;
- IBM Rational TestFactory - автоматизация создания тестов;
- IBM Rational XDE Tester - функциональное тестирование Java и web-
енции
Темы, разделы, вынесенные на самостоятельную подготовку, вопросы к практическим и
лабораторным занятиям; тематика рефератной работы; контрольные, рекомендации по
Компет
Кол. час
Неделя
и
ПК-23
Самостоятельная работа обучающегося – очная форма обучения
2.2.
41
системы
П, Д,
Э, ПБ
ПК-21,
ПК-23
ПК-21,
ПК-23,
ПК -25
приложений.
- QA - компонентамs: QA Partner - среда для разработки, компиляции и
выполнения тестов; QA Organizer - модуль для разработки планов тестирования и
управления процессом тестирования; Agent - модуль, поддерживающий работу в сети;
- TestRecoder – набор библиотек для MS VisualStudiо
2441
Усвоение текущего учебного материала
6
ПК-21,
ПК-23,
ПК -25
2
2
2
2
2
2
10
10
10
10
8
2
использованию литературы и ЭВМ и др.
Самостоятельное изучение отдельных тем курса:
- Тестирование в модели жизненного цикла разработки ПО
- Cвязь проектирования и тестирования.
- Связь тестирования и качества разрабатываемого ПО.
- Документирование тестов и рабочего продукта (Test documentation and work products)
- Аутсорсинг тестирования программного обеспечения
- Тестирование баз данных.
- Модульное и интеграционное тестирование.
- Системное и регрессионное тестирование. Автоматизация тестирования.
- Особенности индустриального тестирования.
- Регрессионное тестирование: цели и задачи, методики, алгоритм и программная
система поддержки.
Тематика заданий для индивидуальной работы:
Описать назначение программ тестирования ПО:
- IBM Rational TestManager - управление тестированием;
- IBM Rational PurifyPlus (Purify, PureCoverage, Quantify) - анализ работы системы
в режиме RunTime;
- IBM Rational Robot - функциональное и нагрузочное тестирование;
- IBM Rational TestFactory - автоматизация создания тестов;
- IBM Rational XDE Tester - функциональное тестирование Java и webприложений.
- QA - компонентамs: QA Partner - среда для разработки, компиляции и
выполнения тестов; QA Organizer - модуль для разработки планов тестирования и
управления процессом тестирования; Agent - модуль, поддерживающий работу в сети;
- TestRecoder – набор библиотек для MS VisualStudiо
Усвоение текущего учебного материала
енции
Темы, разделы, вынесенные на самостоятельную подготовку, вопросы к практическим и
лабораторным занятиям; тематика рефератной работы; контрольные, рекомендации по
Компет
Кол. час
Неделя
Самостоятельная работа обучающегося – заочная форма обучения, срок обучения 5 лет
ПК-21,
ПК-23
ПК-21,
ПК-23,
ПК -25
ПК-21,
ПК-23,
ПК -25
2
2
2
2
использованию литературы и ЭВМ и др.
Самостоятельное изучение отдельных тем курса:
- Тестирование в модели жизненного цикла разработки ПО
- Cвязь проектирования и тестирования.
- Связь тестирования и качества разрабатываемого ПО.
- Документирование тестов и рабочего продукта (Test documentation and work products)
енции
Темы, разделы, вынесенные на самостоятельную подготовку, вопросы к практическим и
лабораторным занятиям; тематика рефератной работы; контрольные, рекомендации по
Компет
Кол. час
Неделя
Самостоятельная работа обучающегося – заочная форма обучения, срок обучения 3 года 6
месяцев (в)
ПК-21,
ПК-23
2
2
10
10
10
10
8
2
- Аутсорсинг тестирования программного обеспечения
- Тестирование баз данных.
- Модульное и интеграционное тестирование.
- Системное и регрессионное тестирование. Автоматизация тестирования.
- Особенности индустриального тестирования.
- Регрессионное тестирование: цели и задачи, методики, алгоритм и программная
система поддержки.
Тематика заданий для индивидуальной работы:
Описать назначение программ тестирования ПО:
- IBM Rational TestManager - управление тестированием;
- IBM Rational PurifyPlus (Purify, PureCoverage, Quantify) - анализ работы системы
в режиме RunTime;
- IBM Rational Robot - функциональное и нагрузочное тестирование;
- IBM Rational TestFactory - автоматизация создания тестов;
- IBM Rational XDE Tester - функциональное тестирование Java и webприложений.
- QA - компонентамs: QA Partner - среда для разработки, компиляции и
выполнения тестов; QA Organizer - модуль для разработки планов тестирования и
управления процессом тестирования; Agent - модуль, поддерживающий работу в сети;
- TestRecoder – набор библиотек для MS VisualStudiо
Усвоение текущего учебного материала
ПК-21,
ПК-23,
ПК -25
ПК-21,
ПК-23,
ПК -25
2
2
2
2
2
2
10
10
10
10
8
лабораторным занятиям; тематика рефератной работы; контрольные, рекомендации по
использованию литературы и ЭВМ и др.
Самостоятельное изучение отдельных тем курса:
- Тестирование в модели жизненного цикла разработки ПО
- Cвязь проектирования и тестирования.
- Связь тестирования и качества разрабатываемого ПО.
- Документирование тестов и рабочего продукта (Test documentation and work products)
- Аутсорсинг тестирования программного обеспечения
- Тестирование баз данных.
- Модульное и интеграционное тестирование.
- Системное и регрессионное тестирование. Автоматизация тестирования.
- Особенности индустриального тестирования.
- Регрессионное тестирование: цели и задачи, методики, алгоритм и программная
система поддержки.
Тематика заданий для индивидуальной работы:
Описать назначение программ тестирования ПО:
- IBM Rational TestManager - управление тестированием;
- IBM Rational PurifyPlus (Purify, PureCoverage, Quantify) - анализ работы системы
в режиме RunTime;
- IBM Rational Robot - функциональное и нагрузочное тестирование;
- IBM Rational TestFactory - автоматизация создания тестов;
- IBM Rational XDE Tester - функциональное тестирование Java и webприложений.
- QA - компонентамs: QA Partner - среда для разработки, компиляции и
выполнения тестов; QA Organizer - модуль для разработки планов тестирования и
управления процессом тестирования; Agent - модуль, поддерживающий работу в сети;
- TestRecoder – набор библиотек для MS VisualStudiо
Усвоение текущего учебного материала
2
енции
Темы, разделы, вынесенные на самостоятельную подготовку, вопросы к практическим и
Компет
Кол. час
Неделя
Самостоятельная работа обучающегося – заочная форма обучения, срок обучения 3 года 6
месяцев (с)
ПК-21,
ПК-23
ПК-21,
ПК-23,
ПК -25
ПК-21,
ПК-23,
ПК -25
Интерактивные технологии и инновационные методы, используемые в образовательном
процессе
Основаны на использовании современных достижений науки и информационных
технологий. Направлены на повышение качества подготовки путем развития у обучающихся
творческих способностей и самостоятельности (методы проблемного обучения, исследовательские
методы, тренинговые формы, рейтинговые системы обучения и контроля знаний и др.).
2.3.
№
Наименование основных форм
Краткое
описание
и
примеры,
использования в темах и разделах, место
проведения
Часы
1.
Компьютерные симуляции
9
2.
Разбор конкретных ситуаций
Все практические работы выполняются в
компьютерных классах университета
Проведение
тестирования
ПО
на
конкретных примерах
9
3. Средства обучения
3.1. Информационно-методические
№
Перечень основной учебной литературы и дополнительной литературы, методических
разработок; с указанием наличия в библиотеке
Основная учебная литература:
1.
2.
3.
4.
5.
6.
Котляров В.П. Основы тестирования программного обеспечения: учебное пособие. – М.: Интернет
Университет, 2005.
Канер С., Фолк Дж., Кек Нгуен Е. Тестирование программного обеспечения: Пер. с англ. - К:
ДиаСофт, 2000. - 544 с.
Тамре Л. Введение в тестирование программного обеспечения. - М.: Издательский дом «Вильямс»,
2003. - С. 368.
Бейзер Б. Тестирование черного ящика. Технологии функционального тестирования программного
обеспечения и систем. – СПб.: Питер, 2004. – 320 с.
Портал об автоматизированном тестировании ПО [Электронный ресурс]. http://automated-testing.info/tools/performance-testing
Канер С., Фолк Д., Нгуен Е.К. Тестирование программного обеспечения. Фундаментальные
концепции менеджмента бизнес-приложений. - ДиаСофт, 2001. – 544 с.
Дополнительная литература:
1.
Иан С. Инженерия программного обеспечения, 6-е издание: Пер. с англ. - М.: Издательский дом
«Вильямс», 2002.-624 с.
2.
Вендров А.М. Проектирование программного обеспечения экономических
информационных систем: учеб. для экон. вузов. - М.: Финансы и статистика, 2003. – 347 с.
3.
Иванова Г.С. Объектно-ориентированное программирование: учеб. для вузов. - 2-е изд. - М. :
Изд-во МГТУ им. Н. Э. Баумана, 2003. - 367 с.
4.
Калбертсон Р., Браун К., Кобб Г. Быстрое тестирование. – М.: Вильямс , 2001. – 384 с.
5.
Безбородов Ю.М. Индивидуальная отладка программ. - М.: Наука, 1982. - С. 9-79.
6.
Kaner C., Bach J., Pettichord B. Lessons Learned in Software Testing. - Wiley, 2001. – 352 с.
7.
Майерс Г. Надежность программного обеспечения. - М.: Мир, 1980. - С. 171-262.
8.
Дастин Э., Рэшка Д., Пол Дж. Автоматизированное тестирование программного обеспечения. – М.:
Лори, 2003. - 592 с.
9.
Липаев В.В. Тестирование программ. - М.: Радио и связь, 1986. - С. 15-47.
3
1
1
1
1
1
1
1
1
1
1
1
1
1
3.2. Материально-технические
№ ауд.
Компьютерные
классы
Основное
оборудование,
стенды,
макеты,
компьютерная техника, наглядные пособия и
другие
дидактические
материалы,
обеспечивающие проведение лабораторных и
практических занятий, научно-исследовательской
работы обучающихся с указанием наличия
Мультимедийный компьютер, локальная сеть,
мультимедиа интерактивное оборудование
Основное
назначение
(опытное,
обучающее,
контролирующее)
и
краткая
характеристика
использования при изучении явлений
и процессов, выполнении расчетов.
Назначение опытное, обучающее.
Применяется для создания
Телевизионные
аудитории
Компьютер, телевизионная или проекционная
техника
приложений и их тестирования
Назначение обучающее. Применяется
для демонстрации презентаций
4. Текущий, промежуточный контроль знаний обучающихся
№
1.
Тесты (демонстрационный вариант), темы курсовых работ/проектов, вопросы и задания для
текущего контроля, для подготовки к зачету, экзамену
Текущий контроль успеваемости
По Модулю 1 «Основы тестирования»:
Контрольный письменный опрос по следующим вопросам:
Вариант 1
Теоретические задания:
1. Что такое метод выборочного регрессионного тестирования?
2. В чем заключаются особенности интеграционного тестирования для процедурного
программирования?
3. Возможно ли тестирование программы на всех возможных путях УГП?
4. Возможно ли тестирование программы на всех допустимых значениях параметров?
5. Зачем нужен Log-файл?
6. Зачем нужна спецификация тестирования?
7. Как определить цели тестирования программного проекта?
8. Как определяется тестовая стратегия?
9. Как осуществить планирование тестирования?
10. Как разрабатываются тесты для тестирования спецификаций?
Практические задания:
1. Дана функция P, ее измененная версия P' и набор тестов T, разработанный для тестирования P.
Требуется, используя метод минимизации, отобрать подмножество T' для тестирования P'.
2. Дано: функция P, ее измененная версия P' и набор тестов T, разработанный для тестирования P.
Требуется, используя безопасный метод, отобрать подмножество T' для тестирования P'.
3. Модуль E исходной программы содержал ошибку. Ее исправление потребовало изменения
модулей B, D и E. Тест 1 покрывает модули A, B и C. Тест 2 покрывает модули A, C и E. Тест 3 покрывает
модули D и E. Каким должен быть порядок прогона тестов, если при упорядочении ставится цель
скорейшего достижения наибольшей степени покрытия модулей?
4. На предыдущей версии программы тест 1 завершился в состоянии A, тест 2 – в состоянии B, а
тест 3 – в состоянии C. На текущей версии программы тест 1 завершился в состоянии A, тест 2 – в
состоянии C, а тест 3 – в состоянии D. На базе какого теста наиболее целесообразна разработка новых
тестов?
Вариант 2
Теоретические задания:
1.
Как реализуются динамические методы построения тестовых путей?
2.
Какая информация должна собираться при тестировании для применения метода оценки
скорости выявления ошибок?
3.
Какая информация должна сопровождать действие по исправлению ошибки и перевод
дефекта в состояние Resolved?
4.
Какие активности входят в систему обеспечения качества программного продукта?
5.
Какие бывают состояния дефекта?
6.
Какие возможности используются для построения дуг графовой модели в ООП?
7.
Какие задачи решает тестировщик, проверяя изменения, внесенные разработчиком в код?
8.
Какие задачи решаются на этапе системного тестирования?
9.
Какие задачи у модульного тестирования?
10.
Какие из перечисленных средств использует в своей работе система поддержки
регрессионного тестирования?
Практические задания:
1. Дана функция P, ее измененная версия P' и набор тестов T, разработанный для тестирования P.
Требуется, используя метод стопроцентного покрытия кода, отобрать подмножество T' для тестирования
P'.
2. Класс A является потомком класса B, который, в свою очередь, является потомком класса C.
Класс B был изменен. Тестирование каких классов необходимо обеспечить?
3. Модуль E исходной программы содержал ошибку. Ее исправление потребовало изменения
модулей B, D и E. Тест 1 покрывает модули A, B и C. Тест 2 покрывает модули A, C и E. Тест 3 покрывает
модули D и E. Каким должен быть порядок прогона тестов, если при упорядочении ставится цель
скорейшего роста вероятности того, что тестируемая система надежна?
4. На предыдущей версии программы тест 1 завершился в состоянии A, тест 2 – в состоянии B, а
тест 3 – в состоянии C. На текущей версии программы тест 1 завершился в состоянии A, тест 2 – в
состоянии C, а тест 3 – в состоянии D. На базе какого теста наиболее целесообразна разработка новых
тестов?
По Модулю 2 «Методы тестирования»:
Контрольный письменный опрос по следующим вопросам:
Вариант 1
Теоретические задания:
1.
Какие категории тестов разрабатываются для системного тестирования?
2.
Какие классы частных критериев тестируемости известны?
3.
Какие методы регрессионного тестирования применяются в условиях высоких
требований к качеству программного продукта?
4.
Какие методы регрессионного тестирования применяются в условиях отсутствия
программных средств поддержки регрессионного тестирования?
5.
Какие методы регрессионного тестирования применяются, если исходный набор состоит
из структурных тестов?
6.
Какие метрики обычно входят в список тестовых?
7.
Какие операции позволяет автоматизировать система поддержки регрессионного
тестирования?
8.
Какие операции при использовании системы поддержки регрессионного тестирования
выполняются вручную?
9.
Какие основные уровни выделены в процессе тестирования?
10.
Какие подходы используются для обоснования истинности программ?
Практические задания:
1. Ожидаемое время работы метода отбора тестов – 1 час. Среднее время выполнения одного теста
– 1 час. Тестовый набор состоит из 8 тестов. Каково значение порога целесообразности?
2. Ожидаемое время работы метода отбора тестов – 2 часа. Среднее время выполнения одного
теста – 2 часа. Тестовый набор состоит из 8 тестов. Каково значение порога целесообразности?
3. При создании очередной версии программы была добавлена функция A, функция D была
удалена, функция C – изменена, а функция U – оставлена без изменений. К какой группе относится тест,
покрывающий только функцию D?
4. Тестируемая программа состоит из модулей A, B, C и D, взаимодействующих по принципу
«каждый с каждым». Модули A и B были изменены. Тестирование каких интерфейсов необходимо
обеспечить, если используется брандмауэр?
5. Функция int function(int number) была изменена и возвращает (number + 2) вместо (number + 1).
На каком уровне возможно повторное использование теста «1»?
Вариант 2
Теоретические задания:
1. На основе каких принципов строятся тесты для модульного тестирования?
2. Назовите критерии стохастического тестирования.
3. Назовите недостатки структурных критериев.
4. Назовите недостатки функциональных критериев.
5. Перечислите метрики оценки оттестированности программного проекта?
6. Перечислите разновидности функциональных критериев.
7. Сколько тестов потребуется для проверки программы, реализующей задержку на
неопределенное количество тактов?
8. Сопровождение какого типа соответствует случаю исправления ошибки в коде?
9. Сопровождение какого типа соответствует случаю реализации новых требований пользователя?
10. Сопровождение какого типа соответствует случаю улучшения временных характеристик
программы?
Практические задания:
1. Ожидаемое время работы метода отбора тестов – 2 часа. Среднее время выполнения одного
теста – 1 час. Тестовый набор состоит из 8 тестов. Каково значение порога целесообразности?
2. При создании очередной версии программы была добавлена функция A, функция D была
удалена, функция C – изменена, а функция U – оставлена без изменений. К какой группе относится тест,
покрывающий только функцию A?
3. При создании очередной версии программы была добавлена функция A, функция D была
удалена, функция C – изменена, а функция U – оставлена без изменений. К какой группе относится тест,
покрывающий только функции C и U?
4. Функция int function(int number) была изменена и возвращает (number + 2) вместо (number + 1).
На каком уровне возможно повторное использование теста «1»?
5. Функция int function(int number) была изменена и приобрела вид int function(char* string). На
каком уровне возможно повторное использование теста «1»?
2.
Вопросы к зачету:
1. Основные понятия тестирования: концепция тестирования, подходы.
2. Различия тестирования и отладки.
3. Фазы и технология тестирования.
4. Проблемы тестирования.
5. Критерии выбора тестов: структурные, функциональные, стохастические.
6. Критерии выбора тестов: мутационные, оценки покрытия проекта.
7. Разновидности тестирования: модульное, интеграционное.
8. Разновидности тестирования: системное, регрессионное.
9. Автоматизация тестирования, издержки тестирования.
10. Особенности процесса и технологии индустриального тестирования: планирование
тестирования, подходы к разработке тестов.
11. Особенности ручной разработки и генерации тестов.
12. Автоматизация тестового цикла.
13. Документирование тестирования, обзоры и метрики.
14. Регрессионное тестирование: особенности и виды регрессионного тестирования.
15. Методы отбора тестов, оценка эффективности.
5. Дополнения и изменения в рабочей программе на учебный год
_____/______
Следующие записи относятся к п.п.
Автор
Зав. Кафедрой
Принято УМУ__________________________________ Дата:________________
Download