Лекция 11

Тестирование: от «кажется, работает» к проверке

Как тестировщик задаёт вопросы системе и обосновывает вывод.

Заказ создался. Можно выпускать?
01
Тестировщик проверяет необычные заказы, пока посетитель спрашивает, где туалет

Тестировщик заходит в бар

Он проверил один бокал, два, пустой и даже «−1».

Но первый посетитель спрашивает, где туалет.

02

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

Отдельные операции могут работать по правилу, а весь путь всё равно мешает человеку достичь цели.
03

Путь студента за эту лекцию

В начале

«Проверить, работает ли».

По пути

Выбрать вопрос и случай для проверки.

В конце

Обосновать вывод и сообщить о расхождении.

04

Тестировщик участвует в цикле разработки

Этап работыВклад тестировщика
Уточняют задачуРазбирается в контексте, замечает неясные правила.
Проектируют и пишут кодПродумывает важные проверки, данные и окружение.
Проверяют изменениеИсследует поведение и фиксирует расхождения.
Исправляют и выпускаютПроверяет исправление, сообщает о проверенном и рисках.
05

Отмена доставки: вопросы до проверки

Кто может отменить заказ? На каких этапах?

Что происходит с оплатой и курьером?

Тестировщик помогает сделать правило проверяемым.
06

Система отвечает на наши действия

Входные данные и действия. Поведение системы. Ответ и новое состояние.

Чёрный ящик: внутреннее устройство нам неизвестно.

Серый ящик: часть устройства или данных нам известна.

07
Пять обычных пассажиров и три стронгмена в двух лифтах с индикаторами веса

В лифте действуют два ограничения

Не более 5 человек.

Не более 400 кг.

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

08

Крайнее значение проверяет границу правила

Количество товара: целое число от 1 до доступного остатка.

Допустимые: 1 ... остаток.

Рядом с границами: −1, 0 и остаток + 1.

Проверяем границы и соседние значения, затем смотрим на состояние корзины.

09
Диван проходят через дверь, лестничный поворот и лифт, рядом вариант разобрать его

Пройдёт ли диван весь маршрут?

Он помещается в комнате.

Но пройдёт ли в дверь, повернёт ли на лестничной площадке и войдёт ли в лифт?

10

Из правила получаются разные проверки

СлучайПример количества в корзине
Обычный3 товара при достаточном остатке.
Граничный1 товар или всё доступное количество.
За границей0, −1 или больше остатка.
СочетаниеПовтор запроса при остатке в 1 товар.
11

У одной проверки несколько характеристик

ВопросВариант ответа
Где проверяем?Модуль, интеграция, система, приёмка.
Как выполняем?Вручную или автоматически.
Что исследуем?Функцию, удобство, совместимость, безопасность, скорость.
12

Телефон разработчика не показывает все условия

Все сочетания не перебрать. Выбираем важные операции, изменённые места и дорогие ошибки.
13
Схематичная карта города с объектами и фильтром поиска, не реальная карта CRM

В CRM нашли 12 объектов. Это ошибка?

В Уфе поиск аренды коммерческой недвижимости вернул всего 12 объектов.

Что мы пока знаем? Чего ещё не знаем?

14

Наблюдение ещё не доказывает дефект

Наблюдение

В выдаче 12 объектов.

Ожидание

Кажется, должно быть больше.

Основание

Какие объекты пропущены и почему они должны попасть в выдачу?

15

До запроса запишите ожидаемый результат

Правило: количество от 1 до доступного остатка
Данные: количество = −1
Ожидаю: отказ в запросе
После отказа: корзина и цена не меняются

После действия сравните ответ и состояние системы с ожиданием.

16

Баг-репорт помогает повторить расхождение

Сообщение о проблеме должно помочь другому человеку её увидеть.
17

«Все тесты зелёные». Что это доказывает?

Проверки основаны на правилах?

Какие границы и сочетания включены?

Что запускалось и что осталось непроверенным?

18

От «кажется, работает» к обоснованной проверке

Тестировщик понимает правила, выбирает случаи, наблюдает результат и сообщает, что действительно проверено.

В ЛР №9 вы исследуете службу доставки и напишете баг-репорты.

Ценность не в числе нажатий. Ценность в обоснованном выводе.
19
← → листать · F полный экран