Sobes.tech
Junior

Care este diferența dintre testarea cu cutie gri și testarea cu cutie neagră?

sobes.tech AI

Răspuns de la AI

Тестирование черного ящика (Black Box Testing) основано на проверке функциональности системы без знания ее внутренней структуры и кода. Тестирование серого ящика (Gray Box Testing) сочетает элементы черного и белого ящиков: тестировщик имеет частичное знание внутренней структуры или алгоритмов системы, что позволяет создавать более эффективные тест-кейсы.

Ключевые отличия:

Описание Тестирование черного ящика Тестирование серого ящика
Знание системы Нет знаний о внутренней strukturе и коде. Частичное знание внутренней strukture и логики.
Фокус Проверка функциональности с точки зрения пользователя. Сочетание проверки функциональности и некоторого знания внутренней logika.
Написание тестов Основано на требованиях и спецификации. Основано на требованиях и частичном знании кода/архитектуры.
Охват дефектов Поиск функциональных дефектов, ошибок интерфейса. Поиск функциональных дефектов, ошибок логики в определенных участках кода.
Примеры тестов Эквивалентное разбиение, анализ граничных значений, таблицы состояний. Тестирование баз данных, тестирование интеграции на основе знания API, тестирование безопасности с учетом архитектуры.

Пример test-case для черного ящика (аутентификация):

  • Valid username, valid password -> Successful login.
  • Invalid username, valid password -> Error message.
  • Valid username, invalid password -> Error message.
  • Empty username, empty password -> Error message.

Пример test-case для серого ящика (аутентификация с учетом знания о max_login_attempts в БД):

  • Attempt login with invalid credentials max_login_attempts times -> Account is locked (проверка, что after max_login_attempts попыток происходит именно lock, а не что-то другое, основываясь на знании internal limit).