Получить доступ

Что такое тестирование чёрного, белого и серого ящика?

JuniorВиды тестирования
Ещё спрашивают так:
  • Чем black box отличается от white box?
  • Что такое тестирование серого ящика?
Коротко

Методы по доступу к коду: чёрный ящик — без знания внутреннего устройства, белый — с доступом к коду, серый — частичное знание (база, логи, API).

  • Чёрный ящик — по требованиям и поведению; основной для ручного тестировщика
  • Белый — покрытие веток и условий кода, обычно разработчики

А ещё Серый ящик — когда смотрите в базу или логи, чтобы проверить результат

Так подсказку видит пользователь sotto на живом собеседовании — за пару секунд, пока вы думаете вслух.

Подробно

Чёрный ящик — тестировщик не знает, как устроен код, и проверяет систему по входам и выходам: ввёл данные — сравнил результат с ожидаемым по требованиям. Сюда относятся почти все техники тест-дизайна: классы эквивалентности, граничные значения, таблицы решений, переходы состояний.

Белый ящик — тесты строятся по коду: чтобы выполнились все строки, ветки if, условия, циклы. Метрики — покрытие операторов, ветвей, условий. Обычно этим занимаются разработчики в unit-тестах.

Серый ящик — промежуточный вариант: тестировщик знает часть устройства — схему базы, архитектуру, API, логи — и использует это. Например, после оформления заказа проверяет в базе, что запись создалась с правильным статусом, или смотрит в логах, какая ошибка пришла от сервиса.

На практике тестировщик чаще всего работает чёрным ящиком через интерфейс и серым — через DevTools, базу и логи.

Пример

Форма скидки: «скидка 10 % от 5000 ₽». Чёрный ящик — проверить суммы 4999, 5000, 5001 и ожидаемую цену. Серый — после покупки посмотреть в таблице заказов, что скидка записана. Белый — убедиться, что тесты проходят обе ветки условия if total >= 5000.

Что хотят услышать

  • Определение трёх методов через доступ к внутреннему устройству.
  • Кто какой метод использует.
  • Пример серого ящика из практики: база, логи, API.

Частые ошибки

  • Путать с уровнями тестирования.
  • Считать, что тестировщику доступен только чёрный ящик.

Что спросят дальше

Связанные вопросы

Закрытая бета

Подсказки на собеседовании — в реальном времени

sotto слышит вопрос интервьюера и показывает короткий ответ и план, как в блоке «Коротко». Оставьте контакт — пришлём доступ и промокод.

  • Промокод на 2 часа — сверх пробных 30 минут
  • Программа для Windows — скачать сразу, войти — через Яндекс ID или VK ID
  • Прямая связь с разработчиком: что улучшить — сделаем