В распоряжении тестировщика (QA-специалиста) имеется много разных методов для проведения проверок программного обеспечения. Сегодня поговорим про один из самых интересных – негативные тесты.
В распоряжении тестировщика (QA-специалиста) имеется много разных методов для проведения проверок программного обеспечения. Сегодня поговорим про один из самых интересных – негативные тесты.
Оглавление
ToggleДопустим, тестировщик сделал ряд проверок программного обеспечения и убедился, что при вводе корректных исходных данных на выходе получаются корректные результаты. Но будет ли этого достаточно, чтобы сделать общий вывод о качестве ПО? Нет, потому что проверки проведены только на корректных данных – это Positive testing.
А если вдруг пользователь введет исходные данные, которые ПО не должно принимать и обрабатывать, а оно их примет и обработает? Это будет дефект. Чтобы проверять наличие таких дефектов, придуман метод негативных тестов (Negative testing).
Негативное (отрицательное) тестирование – это метод тестирования программного обеспечения, когда проверяется, как ведет себя программа при получении недопустимых или неожиданных входных данных. Предполагается, что если данные лежат вне разрешенного диапазона, то ПО должно по крайней мере не обращаться с ними как с обычными значениями. В идеале программа должна сообщить пользователю о том, что данные некорректны.
Все дело в том, что неправильные исходные данные могут породить сбой в системе и привести к ущербу для пользователя и/или клиента. В некоторых случаях это напрямую навредит безопасности ПО. Например, атака на данные через SQL-инъекции как раз использует такую возможность. Поэтому негативное тестирование проверяет, может ли ввод недопустимых значений нарушить работу ПО.
Negative testing можно продемонстрировать следующими проверками:
Позитивное тестирование базируется на том, что входные данные берутся только из допустимого (разрешенного, корректного) набора возможных значений. Негативное – входные данные, наоборот, содержат недопустимые значения. При этом не всегда они должны быть все некорректные – можно делать негативные тесты и для частично неверных значений.
Считается, что негативное тестирование надо делать после позитивного. Но может быть и по-другому, если в данном проекте по какой-либо причине приоритет на проведение негативных тестов будет выше, чем позитивных (например, в контекстном тестировании).
Вообще говоря, есть четыре базовых сценария, как может среагировать ПО на ввод недопустимых значений:
Резюме
Негативное тестирование проводится, чтобы проверить, что программа может справляться с вводом недопустимых или неожиданных данных. Для составления такого теста QA-специалист может использовать некорректные значения (т.е. запрещенные в требованиях к ПО). Чтобы попрактиковаться в составлении негативных тестов – выбирайте онлайн-школы и записывайтесь на курсы тестировщиков!
Автор Михаил Кулешов
Михаил, профессиональный партнерский маркетолог, является основателем компании South Media OÜ, которая была создана в 2018 году и базируется в Таллинне. С 2016 года Михаил уехал из Финляндии и жил как настоящий «цифровой кочевник» в IT-индустрии, путешествуя по миру только с ноутбуком. Михаил работает и пишет статьи, связанные с IT-индустрией.
© Copyright 2023 Testirovshik.com