Interested Article - Тестирование белого ящика

Разработка программного обеспечения
Ключевые процессы
Парадигмы и модели
Методологии
Инструменты

Тестирование белого ящика ( англ. white-box testing ), также тестирование стеклянного ящика ( англ. glass-box testing ), структурное тестирование ( англ. structural testing ) — тестирование, которое учитывает внутренние механизмы системы или компонента (ISO/IEC/IEEE 24765) .

Обычно включает тестирование ветвей, маршрутов, операторов (см. покрытие кода ) . При тестировании выбирают входы для выполнения разных частей кода и определяют ожидаемые результаты. Это напоминает .

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

Критерии покрытия кода :

  • покрытие операторов — каждая ли строка исходного кода была выполнена и протестирована;
  • покрытие условий — каждая ли точка решения (вычисления истинно ли или ложно выражение) была выполнена и протестирована;
  • покрытие путей — все ли возможные пути через заданную часть кода были выполнены и протестированы;
  • покрытие функций — каждая ли функция программы была выполнена;
  • покрытие вход/выход — все ли вызовы функций и возвраты из них были выполнены;
  • покрытие значений параметров — все ли типовые и граничные значения параметров были проверены.

Уровни тестирования

Модульное тестирование . Необходимо, чтобы убедиться, что код работает должным образом, до момента интеграции с остальным кодом . Позволяет находить ошибки на ранней стадии, а также контролировать устранение и любое дальнейшее изменение, препятствуя повторению ошибок в будущем . Главным образом, нужно убедиться, что в изолированной среде код выполняется согласно спецификации .

Интеграционное тестирование . Проверяется взаимодействие интерфейсов друг с другом . Главным образом, нужно убедиться, что при взаимодействии части системы отрабатывают как задумано .

Регрессионное тестирование . Тестирование, направленное на обнаружение ошибок в уже протестированных участках исходного кода, с целью удостовериться в отсутствии побочных эффектов при внесении модификаций.

Тестирование на взлом

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

Примечания

  1. . Дата обращения: 27 августа 2019. 20 апреля 2019 года.
  2. Williams, Laurie. . Дата обращения: 27 августа 2019. 22 января 2022 года.

Ссылки

  • Peli de Halleux, Nikolaj Bjorner. , February 21, 2007.
Источник —

Same as Тестирование белого ящика