21
Тестирование по стратегии Черного ящика

3 лекция. презентация

Embed Size (px)

Citation preview

Тестирование по стратегии Черного ящика

Тестирование по стратегии черного ящика

• вид тестирования, проводимый без знания внутренних механизмов работы продукта

• Производится на основании внешних проявлений работы продукта

• тестирование через интерфейс пользователя, не имея доступа к исходному коду продукта

• Тестирование по спецификации

Цель тестирования

• Проверить работоспособность программы на соответствие требованиям спецификации

• пропустить как можно меньше важных для пользователя ошибок

Типы обнаруживаемых проблем

• Некорректная работа

• Потерянная функциональность

• Проблемы удобства использования

• Проблемы производительности

• Проблемы совместного доступа

• Проблемы инициализации и завершения

Software under Test (SUT)

Входные данные

Результат работы

программы

Тест-кейc (Test Case)

Тестовый случай (Test case)

• это документ, описывающий совокупность шагов, конкретных условий и параметров, необходимых для проверки реализации тестируемой функции или её части

Структура тест-кейса

• Название

• Описание

• Предусловия (pre-condition)

• Действия (steps)

• Постусловия (post-condition)

• Ожидаемый результат

Факториал числа10 3628800

N, N>0, только целые Factorial(N)

0 1

1 1

2 2

3 6

4 24

5 120

6 720

• Перебор всех возможных вариантов выполнения для любой нетривиальной программы невозможен

• Огромное количество выходных данных

• Ограниченное время тестирования

• Ограничены ресурсы

Сколько тестов необходимо?

• Количество всех возможных тестов огромно

• Есть возможнось выбрать только малое количество тестов и провести их

• Какие тесты выбрать?

Классы эквивалентности

• множество тестов со сходными параметрами, протестировав один из них, можно поставить галочку, что протестировал и все остальные (остальные параметры множества будут иметь тот же результат)

• разбиение данных на группы(классы) при тестировании которых система будет вести себя одинаково

Какие сущности можно разбивать на классы эквивалентности?

• Числа• Символы• Количество (записей в БД, строк)• Длина строки• Размер файла• Объем памяти• Разрешение экрана• Версии операционной системы, библиотек• Объем передаваемых данных

«Позитивное» тестирование

• Тестирование на данных или сценариях, которые соответствуют нормальному (штатному, ожидаемому) поведению системы

• Цель: проверка того, что при помощи системы можно делать то, для чего она создавалась

«Негативное» тестирование

• тестирование на данных или сценариях, которые соответствуют нештатному поведению тестируемой системы – различные сообщения об ошибках, исключительные ситуации, “запредельные” состояния и т.п

• Цель: проверка устойчивости системы к воздействиям различного рода, валидация неверного набора данных, проверка обработки исключительных ситуаций (как в реализации самих программных алгоритмов, так и в логике бизнес-правил)

Классы эквивалентности

• Все целые положительные числа

• Все целые отрицательные числа

• Все дробные числа

Факториал числаN N!

Проверка граничных условий

• Проверить работу программы когда вводятся значения на границе подмножеств

• проверка поведения программы при введении в программу входных данных, которые находятся непосредственно на границе допустимых значений, а так же чуть выше и ниже границы допустимых значений

Граничные значения

• Значения на границах классов эквивалентности входных значений или около них

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

Сколько необходимо грузовиков?

• Все грузовики меньше

4,5 м – Эквивалентны

• Все грузовики выше

4,5 м – Эквивалентны

Сколько грузовиков

Выбрать ?

Минимальный набор тестовНазвание Действия Ожидаемый

результатФактический результат

Pass/Fail

Проверка факториала 0

1. Ввести 02. Нажать

Enter

1

Проверка факториала 10

1. Ввести 102. Нажать

Enter

3628800

Проверка факториала -5

1. Ввести -52. Нажать

Enter

Сообщение об ошибке, число меньше 0

Проверка факториала 3.5

1. Ввести 3.5

2. Нажать Enter

Сообщение об ошибке, число не целое

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

Регистрация • Пользователь регистрируется если– Совершеннолетний– Введено имя– Введен логин

• Получает SMS если– Введен номер

телефона– Стоит галочка «хочу

получать»

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

Программа-архиватор

• Архивирует один файл

• Несколько файлов

• Папку с файлами