- •Этапы проектирования
- •Метрики Джилба
- •Статическое тестирование
- •Тестирование «белого» и «черного» ящика
- •Динамическое тестирование
- •Тест
- •тестирование «белого» и «черного» ящика
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование
- •Unit - тестирование
- •Модульное тестирование(методика)
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование
- •Пример программы исследования
- •Пример программы исследования
- •Пр программы исследования
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование
- •Модульное тестирование в Visual Studio
- •Тестовый отчет
- •Модульное тестирование
- •Модульное тестирование
- •Матрица соответствия
Этапы проектирования
Метрики Джилба
Метрики Джилба используются при статическом методе тестирования.
Статический метод тестирования не требует выполнения кода.
Стаитческий метод тестирования анализирует код, требования и дизайн.
С= СL/n где
СL -количество управляющих операторов (if , for ) n -общее число операторов.
Статическое тестирование
Статическое тестирование используется на следующих этапах разработки программных продуктов (впомним , что тестирование идет параллельно всем этапам разработки программных продуктов , см. 1 лекцию)
Итак статическое тестирование (т.е. без запуска программного продукта)
на этапах
Анализ требований (изучение спецификации, изучение требований к системе)
Планирование
Проектирование (как могут использоваться метрики Джилба для оценки целей и объемов последующего динамического тестирования ( напр. модульного тестирования).
Тестирование «белого» и «черного» ящика
Как правило, используются два типа тестирования (с точки зрения анализа ПО)
Белого ящика – анализ внутренней структуры программы и логика кода , т.е. :
проверка логики работы кода
Проверить потоки данных
Выполнение охвата кода
Проверить внутренние граничные точки
Черного ящика (абстрагируются от логики и внутреннего устройства ПО и внимание сосредотачивается на функции работы программы), что позволяет
Проверить работу ПО с точки зрения клиента
Проверить работу на некорректных данных и т.п.
Динамическое тестирование
Динамическое тестирование – тестирование с запуском кода на исполнение и может быть с запуском всего кода на исполнение (системное тестирование, как напр. при анализе моделей надежности), так и при запуске отдельных модулей (модульное тестирование).
Тест
Серый ящик – сочетает методику черного и белого ящика
тестирование «белого» и «черного» ящика
Модульное тестирование
Объектом модульного тестирования может быть как отдельный класс , метод , функция и т.п.
Покрытие кода модульными тестами является общепризнанной практикой.
Модульное тестирование
Unit тестирование используется для проверки маленького фрагмента программы.
(как правило проверка кода на функциональность). Введем некоторые термины
Рефакторинг кода – т.е. перепрограммирование с целью сделать код более легким для чтения.
Реинжиниринг - создание новой функциональности кода.
Оптимизация производительности кода – процесс переработки ПО с целью оптимальной работы ПО на различной компьютерной технике ( работа процессора, памяти и интерфейсных модулей.)
Модульное тестирование
Модульное тестирование используется на этапе кодирования (или после этапа кодирования)
Осуществляется непосредственно разработчиками программных продуктов.
Различают : 1 вариант.
Ручное тестирование - проводиться максимально просто по заранее составленному документу (плану тестирования) с пошаговыми инструкциями.
Недостаток ручного тестирования: такой подход возможен только с небольшими и несложными фрагментами кода.
Кроме того: ручное тестирование требует много времени.