в основном да.
при тестировании черного ящика вы проверяете, дает ли ожидаемый вход для вашего объекта ожидаемый результат без возможности изменить базовый код.
при тестировании белого ящика вы можете смотрите код и проверяете все возможные пути его прохождения.
Википедия:
Тестирование белого ящика использует внутренняя перспектива системы для разработать тестовые примеры на основе внутренних структура. Требуется программирование навыки определения всех путей через программное обеспечение.
против
Тестирование черного ящика требует внешний вид теста объект для получения тестовых примеров.
Да, он у вас в значительной степени есть. Черный ящик тестирует внешние элементы без знания (или доступа) к чему-либо внутреннему. Тестирование «белого ящика» - это возможность посмотреть (и, возможно, изменить) внутреннее состояние того, что вы тестируете. Оба они используются по-разному. Модульные тесты чаще всего (но не всегда) являются тестами белого ящика.