Тестирование методом “черного ящика” От Редакция techrocks.ru / 27.12.2024 Перевод статьи “Black Box Testing”. Тестирование программного обеспечения — это не просто поиск ошибок. Безусловно, их важно вылавливать. Но, в конце концов, самое главное — это программное обеспечение, полезное для конечного пользователя. Бизнес — это когда клиенты пользуются вашим продуктом, верно? Поэтому всегда помните, что при тестировании (да и при создании) программного обеспечения некоторые функции могут выглядеть очевидными для вас, но не для конечного пользователя. Что такое «черный ящик»? “Это система, которая выдает результаты без возможности для пользователя увидеть или понять, как она работает”. Кембриджский словарь В тестировании “черный ящик” служит для проверки того, как работает приложение, с нетехнической точки зрения конечного пользователя. Тестировщик проверяет функциональность программного обеспечения, не заботясь о внутренних деталях или стратегиях реализации. Он просто предоставляет системе входные данные, имитируя различные действия пользователя, и наблюдает за выходными данными, генерируемыми системой. Тестирование методом “черного ящика” может охватывать множество аспектов, но его основная цель — проверить выходные данные без учета того, что происходит после ввода входных данных. Поскольку тестировщик имитирует действия конечного пользователя, ему важно иметь представление об этом пользователе. Возможно, стоит даже пообщаться с ним. Глубокие знания о конечном пользователе — это ключ к успеху. Тестировщику, применяющему метод “черного ящика”, не нужно быть частью команды разработчиков, если он знает, каковы системные спецификации и требования к работе приложения. При этом лучше привлекать специалистов, разбирающихся в работе продукта или имеющих определенный опыт его использования. Простое знание спецификаций может быть вредным в некоторых ситуациях, например, когда речь идет об ERP-системе, в которой даже клиент на ежедневной основе использует всего несколько функций. С моей точки зрения, не знать ничего и идти напролом — не идеальный вариант, поскольку возможны мнимые ошибки: «Я не уверен, что при нажатии здесь должно было открыться это окно, а не другое». Когда использовать тестирование “черного ящика”? Метод «черного ящика» применяется в различных видах тестирования: в функциональном тестировании, тестировании пользовательского интерфейса, тестировании удобства использования, ad-hoc тестировании. Все эти виды тестирования помогают создать полное покрытие приложения тестами и устранить возможные риски в приложении, проверить ограничения и смоделировать реальные сценарии. Техники тестирования методом “черного ящика” При тестировании методом черного ящика используются специальные техники, позволяющие получить большое тестовое покрытие. Давайте рассмотрим некоторые из них. Эквивалентное разбиение Входные данные делятся на части с допустимыми и недопустимыми значениями. Пример. Допустим, вы тестируете функцию проверки совершеннолетия пользователя. Для этого достаточно двух дат (рождения): одна должна соответствовать возрасту, меньшему 18 лет, а другая — большему. Эти две даты покроют оба сценария. Анализ граничных значений Проверка границ диапазонов входных данных. Пример. При выборе товара количество должно находиться в диапазоне от 1 до 100. Поэтому тест-кейсы должны вращаться вокруг значений внутри диапазона и за его пределами, таких как отрицательные значения или больше/равно 100. Таблица принятия решений Техника, при которой различные комбинации входных данных и соответствующее им поведение представлены в табличном формате. Рассмотрим авторизацию пользователя при вводе email и пароля. Правильный email Правильный пароль Сообщение Да Да Успех Да Нет Неправильный пароль Нет Да Неправильный email Нет Нет Неправильные данные ддя входа Это таблица условий, которая помогает охватить все возможные случаи. Есть и другие техники: тестирование переходов состояний, исследовательское тестирование и угадывание. Заключение Вот и все, что стоит знать о тестировании методом «черного ящика» и его реализации. Пожалуйста, не стесняйтесь добавлять комментарии и поправлять меня, если это необходимо. 7 уроков дизайна для разработчиков 1 комментарий / Новости, Обучение / От andrey_av Не документируйте код. Кодируйте документацию 1 комментарий / Новости, Обучение / От andrey_av
==============
Тестирование методом «черного ящика» предполагает проверку функциональности программного обеспечения с точки зрения конечного пользователя, без знания внутренних деталей реализации. Основные техники включают эквивалентное разбиение, анализ граничных значений и использование таблиц принятия решений для обеспечения полного покрытия приложения тестами и выявления возможных рисков.
