Что такое серый Box Тестирование? Техники, Пример
серый Box Тестирование
серый Box Тестирование или Тестирование серого ящика — это метод тестирования программного обеспечения, позволяющий протестировать программный продукт или приложение с частичным знанием внутренней структуры приложения. Целью тестирования серого ящика является поиск и выявление дефектов, возникших из-за неправильной структуры кода или неправильного использования приложений.
В этом процессе обычно выявляются контекстно-зависимые ошибки, связанные с веб-системами. Это увеличивает охват тестирования, концентрируясь на всех уровнях любой сложной системы.
Серый Box Тестирование — это метод тестирования программного обеспечения, который представляет собой комбинацию обоих Белый Box Тестирование и черный Box Метод тестирования.
- В белом Box внутренняя структура (код) тестирования известна
- В черном Box внутренняя структура тестирования (код) неизвестна
- В сером Box Внутренняя структура (код) тестирования частично известна
В области разработки программного обеспечения Грей Box Тестирование дает возможность протестировать обе стороны приложения: уровень представления, а также часть кода. Прежде всего, это полезно в Интеграционное тестирование и Тестирование на проникновение.
Пример серого Box Тестирование: При тестировании веб-сайтов используются такие функции, как ссылки или бесхозные ссылки, если тестер сталкивается с какой-либо проблемой с этими ссылками, он может сразу внести изменения в HTML-код и проверить их в режиме реального времени.
Почему серый Box Тестирование
Серый Box Тестирование проводится по следующей причине:
- Он обеспечивает комбинированные преимущества как тестирования черного ящика, так и тестирования белого ящика.
- Он объединяет вклад разработчиков и тестировщиков и улучшает общее качество продукта.
- Это уменьшает накладные расходы на длительный процесс тестирования функциональных и нефункциональных типов.
- Это дает разработчику достаточно свободного времени для исправления дефектов.
- Тестирование проводится с точки зрения пользователя, а не с точки зрения дизайнера.
Серый Box Стратегия тестирования
Для проведения тестирования серого ящика не обязательно, чтобы тестер имел доступ к исходному коду. Тест разрабатывается на основе знания алгоритма, архитектуры, внутренних состояний или других высокоуровневых описаний поведения программы.
Чтобы выполнить тестирование серого ящика:
- Он применяет простую технику тестирования черного ящика.
- Он основан на создании тестовых сценариев требований, поэтому заранее устанавливает все условия перед тестированием программы методом утверждений.
Методы, используемые для тестирования серого ящика:
- Матричное тестирование: Этот метод тестирования включает определение всех переменных, существующих в их программах.
- Регрессионное тестирование: Чтобы проверить, не повлияли ли изменения в предыдущей версии на другие аспекты программы в новой версии. Это будет осуществляться с помощью таких стратегий тестирования, как повторное тестирование всех, повторное тестирование рискованных вариантов использования, повторное тестирование внутри брандмауэра.
- Тестирование ортогонального массива или ОАТ: обеспечивает максимальное покрытие кода при минимальном количестве тестовых случаев.
- Тестирование шаблона: Это тестирование выполняется на исторических данных о предыдущих дефектах системы. В отличие от тестирования «черного ящика», тестирование «серого ящика» копается в коде и определяет, почему произошел сбой.
Обычно методология «серого ящика» использует средства автоматизированного тестирования программного обеспечения провести тестирование. Заглушки и драйверы модулей создаются для того, чтобы тестеру не приходилось вручную генерировать код.
Шаги для проведения тестирования «серого ящика»:
- Шаг 1: Определить входы
- Шаг 2: Определить результаты
- Шаг 3: Определить основные пути
- Шаг 4: Определить подфункции
- Шаг 5: Разработка входных данных для подфункций
- Шаг 6: Разработка результатов для подфункций
- Шаг 7: Выполнить тестовый пример для подфункций.
- Шаг 8: Проверьте правильный результат для подфункций.
- Шаг 9: повторите шаги 4 и 8 для других подфункций.
- Шаг 10: повторите шаги 7 и 8 для других подфункций.
Тестовые случаи для тестирования «серого ящика» могут включать в себя: связанные с графическим интерфейсом пользователя, связанные с безопасностью, связанные с базой данных, связанные с браузером, Operaсвязанные с национальной системой и т. д.
Серый Box Проблемы тестирования
- Когда в тестируемом компоненте возникает какой-либо сбой, это может привести к прерыванию текущей операции.
- Когда тест выполняется полностью, но содержание результата неверно.
Итого
- Общая стоимость системных дефектов может быть уменьшена и предотвращена их дальнейшее распространение с помощью тестирования серого ящика.
- Тестирование серого ящика больше подходит для графического интерфейса, Функциональное тестирование, оценка безопасности, веб-приложения, веб-сервисы и т.д.
- Методы, используемые для тестирования «серого ящика»
- Матричное тестирование
- Регрессионное тестирование
- OAT или тестирование ортогональных массивов
- Тестирование паттернов