Обзор тестирования черного ящика

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

Что такое тестирование программного обеспечения?

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

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

Например, поисковая система приложения. В поисковой системе пользователь вводит текст в строку поиска браузера. Поисковая система затем находит и извлекает соответствующие выходные данные пользователя. Что происходит за кулисами, пользователю неизвестно. Таким образом, внутренняя реализация не понимает его.

Преимущества тестирования черного ящика включают в себя:

  • Простота: облегчает тестирование проектов высокого уровня и сложных приложений
  • Экономия ресурсов: тестеры сосредоточены на функциональности программного обеспечения.
  • Тестовые случаи: Сосредоточение внимания на функциональности программного обеспечения для облегчения быстрой разработки тестовых случаев.
  • Обеспечивает гибкость: специальные знания программирования не требуются.

Пример

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

Инструменты, используемые для тестирования черного ящика

Инструменты тестирования черного ящика в основном зависят от того, какой тип тестирования черного ящика вы используете.

  • Функциональные / регрессионные тесты могут быть выполнены через QTP или Selenium
  • Нефункциональные тесты могут быть выполнены через LoadRunner или Jmeter.

Уровни

В Black Box Testing следующие уровни предназначены для тестирования программного обеспечения:

  • Интеграционное тестирование
  • Тестирование системы
  • Приемочное тестирование

Чем выше уровень, тем больше и сложнее будет ящик, и в него вступает больше испытаний черного ящика.

Определение черного ящика

Тестирование черного ящика может быть определено как метод тестирования, в котором тестируется функциональность Application Under Test (AUT), но при этом не учитывается структура внутреннего кода, детали реализации и любые знания о внутренних путях программного обеспечения.

Понимание тестирования черного ящика

Тестирование черного ящика касается всех спецификаций и требований к программному обеспечению. Black Box Testing просто фокусируется на входах и выходах системы программного обеспечения и не беспокоится о внутренних знаниях программного обеспечения.

Как Black Box Testing облегчает работу?

Существует жизненный цикл тестирования программного обеспечения, то есть STLC, который представляет собой «черный ящик» тестирования, относящийся к каждому этапу жизненного цикла разработки программного обеспечения.

  1. На начальном или первом этапе STLC собраны требования к продукту. Это называется фазой сбора требований.
  2. Следующим этапом является планирование планирования и анализ этапа тестирования. Результатами этого этапа, как правило, являются типы тестирования, которые должны быть выполнены в соответствии с проектом и планом тестирования для определения рисков и смягчения этих рисков.
  3. Третий этап - это этап разработки, на котором тестовые случаи, тестовые сценарии подготавливаются с помощью документов с требованиями к программному обеспечению или бизнес-требований.
  4. Последний этап называется этапом выполнения теста. Как следует из названия, на этом этапе выполняются все тестовые сценарии или сценарии. Все найденные ошибки сообщаются, исправляются и проверяются повторно.

Что вы можете сделать с Black Box Testing?

Некоторые из известных стратегий тестирования, используемых в тестировании черного ящика, описаны ниже:

  • Тестирование класса эквивалентности
  • Тестирование граничных значений
  • Тестирование таблицы решений
  • Причинно-следственная проверка
  • Тестирование на основе требований
  • Тестирование совместимости

Тестирование класса эквивалентности

Этот тип тестирования является предпочтительным, поскольку он помогает минимизировать контрольные примеры до уровня, при котором шансы покрытия требований находятся на оптимальном уровне.

Это делается в следующие два этапа:

1. Идентификация и разбиение на классы эквивалентности. Сначала входные данные разбиваются как минимум на два набора: первый набор содержит список допустимых входных значений, а второй набор содержит список недопустимых входных значений. Например, если есть поле возраста, которое может содержать возраст в диапазоне от 20 до 40, то допустимые входные значения могут быть 21, 25, 30, 39 и т. Д., А недопустимые входные значения могут быть любым значением меньше 20 или больше, чем 40 вроде 10, 15, 45, 55 и т. Д.

2. Создание тестовых случаев - каждому действительному входному классу и недопустимому входному классу присваивается уникальный идентификационный номер, а затем тестовые случаи пишутся с намерением охватить два набора входных классов.

Тестирование граничных значений

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

Тестирование таблицы решений

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

Причинно-следственная графика

Причинно-следственный График развивает связь между причинами (логические входы) с соответствующим эффектом (Действия). Они представлены с помощью булевых графов. Шаги должны быть следующими:

  1. Идентификация входов и выходов.
  2. Разработка причинно-следственного графика.
  3. Преобразование графика в таблицу решений.
  4. Преобразование правил таблицы решений в контрольные примеры.

Тестирование на основе требований

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

Тестирование на совместимость

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

  1. Процессоры Pentium 3 или Pentium 4 и количество используемых процессоров
  2. 32-битная или 64-битная архитектура
  3. Серверы баз данных или любые другие внутренние компоненты
  4. Тип операционной системы (Windows, Linux и т. Д.).

Работа с тестированием черного ящика

Ниже приведены основные шаги, необходимые для тестирования черного ящика.

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

преимущества

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

Недостатки

  • Поскольку никаких технических или программных знаний не требуется, могут быть случаи, когда можно игнорировать все действительные и возможные условия сценария, который необходимо протестировать.
  • Существуют возможности меньшего тестирования и незнания каждого возможного входа и их выходного тестирования из-за ограничений по времени (оговоренное время).
  • Полное и законченное тестовое покрытие часто невозможно для сложных и крупных проектов.

Почему мы должны использовать Black Box Testing?

Инструменты тестирования «черного ящика» в основном записывают и воспроизводят. Эти инструменты записывают тестовые случаи в виде сценариев, таких как TSL, JavaScript, VB-сценарий и т. Д. Все эти инструменты в основном используются для регрессионного тестирования, чтобы проверить, не имеет ли предоставленная новая сборка какой-либо дефект в уже работающей функциональности приложения.,

Сфера

Видными и наиболее важными типами тестирования черного ящика являются следующие:

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

Различия

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

White Box Testing - это метод тестирования программного обеспечения, при котором внутренняя структура, дизайн или реализация тестируемого продукта известны тестировщику.

Тестирование черного ящика Тестирование белого ящика
Тестирование черного ящика заключается в том, что внутренняя структура, программа или код неизвестны.Тестирование белого ящика - это когда тестер обладает знаниями о внутренней структуре программного обеспечения.
Обычно это делают тестеры программного обеспечения.Обычно это делается разработчиками программного обеспечения.
Здесь абсолютно никаких знаний о реализации не требуется.Здесь, Знание реализации требуется.
Это также можно назвать внешним / внешним тестированием программного обеспечения.Это также можно назвать внутренним / внутренним тестированием программного обеспечения.
Тестирование черного ящика - это функциональный тест программного обеспечения.Тестирование белого ящика является структурным тестом программного обеспечения.
Это тестирование может быть начато на основании требований спецификации документа.Этот тип тестирования программного обеспечения начинается после детального проектного документа.
Здесь не требуется знание языка программирования.Здесь обязательно знание хотя бы одного языка программирования.
Это в основном тестирование поведения программного обеспечения.Это основная логическая проверка программного обеспечения.
Это в основном применимо к более высоким уровням тестирования.Это в основном применимо к нижним уровням тестирования.
Это также называется поведенческим тестированием.Это также называют прозрачным или стеклянным тестированием коробки.
Тестирование черного ящика занимает меньше времени, чем тестирование белого ящика.Тестирование белого ящика занимает больше времени, чем тестирование черного ящика.
Тестирование черного ящика не подходит для тестирования алгоритма.Тестирование белого ящика подходит для тестирования алгоритма.
Это может быть достигнуто методом проб и ошибок.Внутренние или внутренние границы данных вместе с их областью могут быть тщательно проверены.
Например: поиск чего-либо в Google с помощью ключевых словНапример: Использование входов для проверки и проверки на наличие петель.
Типы

  1. Функциональное тестирование
  2. Нефункциональное тестирование
  3. Регрессионное тестирование
Типы

  1. Тестирование пути
  2. Loop Testing
  3. Тестирование состояния

Вывод:

Все обсуждаемые темы являются основными, а также продвинутыми темами, связанными с тестированием черного ящика и суть всех его методов и методов.

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

Рекомендуемые статьи

Это было руководство к тестированию черного ящика. Здесь мы обсудили, как Black Box Testing выполняется с помощью примеров и различных методов Black Box Testing с инструментами. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Тестирование белого ящика
  2. Тестирование Интервью Вопросы
  3. Что такое гипервизор
  4. Вопросы по тестированию игр