Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

testprog / Лекция 3 - Black-box testing 1

.pdf
Скачиваний:
68
Добавлен:
18.05.2015
Размер:
2.09 Mб
Скачать

лекция №2.1

Стратегия поведенческого тестирования (Black-Box)

Зачем вообще нужны стратегии?

2

Суть тестирования – поиск ошибок в реализации программы

Организация тестирования для выявления всех ошибок:

Подготовить все возможные наборы входных данных, включая некорректные.

Выполнить программу на всех возможных перестановках и сочетаниях входных данных.

Проанализировать все выходные данные и установить, что каждый тестовый выходной набор соответствует правильному.

Для реализации подобного тестирования потребовалось бы колоссальные временные, финансовые и человеческие ресурсы.

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования

Зачем вообще нужны стратегии?

3

Простейшая программа, имеющая три входных параметра – символа латинского алфавита, имеет ~16 млн. комбинаций ввода (с учетом негативных тестов)

Если тестировщик сможет проверять одну комбинацию в секунду, ему потребуется 190 суток беспрерывной работы!

А если программа работает с оперативной памятью, аппаратными приборами, сетью, базами данных, где результат работы на некотором наборе входных данных зависит от данных, поступивших в программу ранее?

Исчерпывающее тестирование за разумное время невозможно!

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования

Зачем вообще нужны стратегии?

4

Невозможно найти все ошибки в программе!

Необходимо выбирать мизерное подмножество входных данных…

… Но так, чтобы найти как можно больше дефектов.

Выбор должен делаться не случайно, а на основании некоторой стратегии

Black-box

White-box

 

 

Поведенческое, функциональное

Структурное

 

 

Неизвестно, как объект (программа)

Процедура тестирования строится исходя

сконструирован внутри. Он как бы

из знания того, как объект (программа)

представляет собой черный ящик, о

сконструирован внутри. Объект – это

котором известна лишь информация о его

прозрачный ящик, о котором известна не

входах и выходах – функциональные

только информация о его входах и

требования к программе. При этом нет

выходах, но, прежде всего, известен

никакой информации о том, как именно

механизм преобразования входных данных

программа преобразует входные данные в

в выходные.

выходные.

 

 

 

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования

Знакомимся с тестируемой программой

5

Как тестировать?

Функциональные требования к тестируемой программе

(Software Under Test, SUT):

Пользователь регистрируется, если:

Совершеннолетний

Тестировщик

Корректный е-мейл

Получает письмо, если

Успешно зарегистрирован в клуб

Поставил галочку «хочу получать»

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования

Процесс тестирования: скриптовое

6

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования

Процесс тестирования: скриптовое

7

Зародилось как компонента водопадного (waterfall) подхода к разработке ПО:

Впервые водопадный подход описан в:

"Managing the Development of Large Scale Systems" by Dr. Winston W. Royce, 1970

Скриптовое тестирование – пример философии «plan your work, work your plan»

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования

Стандарт IEEE Std 829-1998

8

Артефакты и документы скриптового тестирования описаны в стандарте

«IEEE Standard for Software Test Documentation.»

Стандарт выделяет 8 артефактов и документов:

Test plan

Test design specification

Test case specification

Test procedure specification

Test item transmittal report (информация об итерации тестирования)

Test log

Test incident report

Test summary report

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования

Достоинства скриптового тестирования

9

Разделение труда – планирование, тест-дизайн, реализация и выполнение тестов могут выполняться:

1.Разными специалистами с необходимыми навыками;

2.В разное время в цикле разработки ПО.

Тесты создаются на основе спецификаций, дизайна и кода – все важные части системы будут покрыты тестами.

Тесты документированы, они могут быть:

1.Легко поняты и воспроизведены;

2.Выполнены тестировщиками, не имеющими глубокого знания системы.

Тесты детализированы – легче автоматизировать.

Тесты создаются на ранних стадиях цикла разработки – освобождается доп. время на этапе выполнения тестов.

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования

Недостатки скриптового тестирования

10

Сильно зависит от качества требований к системе: полнота, последовательность, непротиворечивость и т.д.

Не отличается гибкостью. Тесты соответствуют ранее определенным сценариям. Дефекты, не покрытые сценариями, могут быть пропущены.

Дополнительные затраты времени на:

1.Создание артефактов и документов.

2.Поддержку в актуальном состоянии при изменении требований, ограничений и т.д.

Тестирование ПО. Лекция 2. Стратегия поведенческого тестирования