Что такое тестирование черного ящика?
BLACK BOX TESTING определяется как методика тестирования, при которой функциональность тестируемого приложения (AUT) тестируется без учета внутренней структуры кода, деталей реализации и знания внутренних путей программного обеспечения. Этот тип тестирования полностью основан на требованиях и спецификациях программного обеспечения. В BlackBox Testing мы просто фокусируемся на входах и выходах программной системы, не заботясь о внутренних знаниях программ.
Вышеупомянутый Black-Box может быть любой программной системой, которую вы хотите протестировать. Например, операционная система, такая как Windows, веб-сайт, такой как Google, база данных, такая как Oracle, или даже ваше собственное приложение. В Black Box Testing вы можете протестировать эти приложения, просто сосредоточившись на входах и выходах, не зная их внутренней реализации кода. Рассмотрим следующий видео-учебник
Нажмите здесь, если видео не доступно
Как сделать BlackBox Testing
Вот общие шаги, которые необходимо выполнить для проведения любого типа тестирования черного ящика.
- Сначала рассматриваются требования и спецификации системы.
- Тестер выбирает допустимые входные данные (положительный сценарий тестирования), чтобы проверить, правильно ли их обрабатывает SUT. Кроме того, некоторые недействительные входные данные (сценарий отрицательного тестирования) выбираются для проверки того, что SUT может их обнаружить.
- Тестер определяет ожидаемые результаты для всех этих входов.
- Тестировщик программного обеспечения создает тестовые наборы с выбранными входами.
- Тестовые случаи выполнены.
- Тестер программного обеспечения сравнивает фактические результаты с ожидаемыми результатами.
- Дефекты, если таковые имеются, исправлены и перепроверены.
Типы тестирования черного ящика
Существует много видов тестирования черного ящика, но наиболее важными являются следующие:
- Функциональное тестирование — этот тип тестирования черного ящика связан с функциональными требованиями системы; это делают тестеры программного обеспечения.
- Нефункциональное тестирование. Этот тип тестирования черного ящика связан не с тестированием конкретной функциональности, а с нефункциональными требованиями, такими как производительность, масштабируемость, удобство использования.
- Регрессионное тестирование — Регрессионное тестирование проводится после того, как исправления кода, обновления или любое другое обслуживание системы для проверки того, что новый код не затронул существующий код.
Инструменты, используемые для тестирования черного ящика:
Инструменты, используемые для тестирования черного ящика, во многом зависят от типа тестирования черного ящика, которое вы делаете.
- Для функциональных / регрессионных тестов вы можете использовать — QTP , Selenium
- Для нефункциональных тестов вы можете использовать — LoadRunner , Jmeter
Методы испытаний черного ящика
Ниже приводятся известные стратегии тестирования среди множества используемых в тестировании черного ящика.
- Тестирование класса эквивалентности: используется для минимизации количества возможных тестовых случаев до оптимального уровня при сохранении разумного охвата тестами.
- Тестирование граничных значений: Тестирование граничных значений ориентировано на значения на границах. Этот метод определяет, является ли определенный диапазон значений приемлемым для системы или нет. Это очень полезно для уменьшения количества тестовых случаев. Это наиболее подходит для систем, где вход находится в определенных диапазонах.
- Тестирование таблицы принятия решений: таблица решений помещает причины и их последствия в матрицу. В каждом столбце есть уникальная комбинация.
Сравнение тестирования черного ящика и белого ящика:
Тестирование черного ящика | Тестирование белого ящика |
---|---|
основное внимание при тестировании черного ящика уделяется проверке ваших функциональных требований. | White Box Testing (модульное тестирование) проверяет внутреннюю структуру и работу вашего программного кода |
Тестирование черного ящика дает абстракцию от кода и фокусируется на тестировании поведения программной системы. | Для проведения тестирования White Box необходимо знание основного языка программирования. Современные системы программного обеспечения используют различные языки программирования и технологии, и невозможно знать все из них. |
Тестирование черного ящика облегчает тестирование связи между модулями | Тестирование белого ящика не облегчает тестирование связи между модулями |
Жизненный цикл тестирования и разработки программного обеспечения (SDLC)
Тестирование черного ящика имеет собственный жизненный цикл, называемый жизненным циклом тестирования программного обеспечения ( STLC ), и он относится к каждому этапу жизненного цикла разработки программного обеспечения.
- Требование — это начальный этап SDLC, и на этом этапе требование собирается. Тестировщики программного обеспечения также принимают участие в этом этапе.
- Планирование испытаний и анализа — Виды испытаний , применимые к проекту намерены. План тестирования создан , который определяет возможные риски проекта и их смягчение.
- Проектирование — на этом этапе тестовые случаи / сценарии создаются на основе документов требований к программному обеспечению.
- Выполнение теста — На этом этапе подготовленные тестовые случаи выполняются. Ошибки, если таковые имеются, исправлены и перепроверены.