| Знай свой предел |
| 28.01.2026 00:00 |
|
Большинство тестировщиков программного обеспечения знает, как проводить граничных значений: например, зная, что текстовое поле должно принимать не более 20 символов, тестировщик проверит ввод 19 символов, 20 символов и 21 символа, а возможно, даже 100 символов. Но я часто сталкивалась с ситуациями, когда тестировщик не проводил тестирование границ, если в критериях приёмки не было явно указано ограничение. Это опасно! Знать пределы полей ввода и всего приложения необходимо по ряду причин. Незнание может привести к уязвимости приложения или ухудшению пользовательского опыта. В этой статье я расскажу о трёх типах пределов, которые стоит знать и проверять. Пределы по размеру При работе с полем ввода в приложении необходимо проверить, какие пределы оно поддерживает. Какое минимальное значение можно ввести? А максимальное? Например, если поле ожидает числовое значение, выясните, какое наибольшее значение оно принимает, а затем – наименьшее. Будет ли это ноль? Можно ли вводить отрицательные числа? Для текстовых полей проверьте, примет ли поле один символ и сколько символов можно добавить до того, как отправка завершится ошибкой. На то, чтобы делать это всегда, есть две причины: во-первых, вы хотите, чтобы пользователь получил понятное сообщение об ошибке, если превышает (или не достигает) ограничения. Представьте ситуацию: кто-то с фамилией длиннее двадцати символов пытается ввести её в поле, которое принимает только двадцать символов. Если сообщение об ошибке отсутствует, пользователь будет разочарован, а опыт взаимодействия с приложением испорчен. Во-вторых, поле без соответствующих ограничений уязвимо для атаки переполнения буфера. Злоумышленник может ввести сотни или тысячи символов, чтобы вызвать ошибку на сервере и получить информацию для доступа к базе данных. Важно установить ограничения ввода, чтобы предотвратить такие атаки. Пределы по размеру также важны для загрузки файлов. Каков максимальный размер файла, который приложение может принять? Незнание этого приведёт к неудачной загрузке для пользователей или к возможности «парализовать» приложение с помощью слишком больших файлов. Пределы по типуКогда приложение позволяет загружать файлы, важно знать, какие типы файлов разрешены, а какие запрещены. Во-первых, чтобы пользователь получил корректное сообщение, если файл запрещён. Во-вторых, чтобы убедиться, что разрешённые файлы действительно обрабатываются. Нельзя, чтобы приложение «разрешало» файлы .png, если на деле оно их не поддерживает. Важно также защищать приложение от вредоносных файлов. Если злоумышленник загрузит файл с встроенным кодом, это создаёт угрозу безопасности. Не полагайтесь только на расширение файла: .exe можно замаскировать под .txt. Нужно проверять, что файл соответствует заявленному типу. Пределы по производительностиЕщё один важный тип пределов — производительность. Нужно знать, сколько запросов в секунду приложение может обрабатывать до ухудшения работы, и что при этом увидит пользователь. Для этого проводят нагрузочное и стресс-тестирование. Определите ожидаемое количество пользователей, запустите тест с этим числом, а затем постепенно увеличивайте нагрузку, пока время отклика не замедлится или запросы не начнут «накапливаться». Зафиксируйте, что увидят реальные пользователи: сообщение об ошибке, зависание приложения, его падение или долгий индикатор загрузки. Эти данные важно обсудить с командой для внесения изменений. Главное преимущество тестировщиков заключается в том, что они всегда думают о том, что может пойти не так. Обязательно знайте пределы вашего приложения во всех его аспектах! |