Данный чек-лист включает только общие характеристики. Естественно, тестируемое приложение может иметь функциональность, для которой необходимо применять особый подход и создавать отдельные сценарии. То же самое касается тестирования производительности, юзабилити, безопасности и других нефункциональных аспектов.
БЕСПЛАТНО СКАЧАТЬ КНИГИ в телеграм канале "Библиотека тестировщика"
Контрольный список для тестирования веб-приложения состоит из шести разделов. Мы рассмотрим их по порядку.
Содержание
- Функциональное тестирование
- Интеграционное тестирование
- Тестирование безопасности
- Тестирование локализации и глобализации
- Тестирование удобства использования
- Кроссплатформенное тестирование
Функциональное тестирование веб-приложения
На этом этапе нам важно убедиться, что наш продукт соответствует требуемым функциональным характеристикам, указанным в документации по разработке.
Что мы проверяем?
- Тестирование различных форм.
- Регистрация:
- Пользователь с данными существует в системе.
- Пользователь с данными не существует в системе.
- Пользователь, заблокированный в системе, не может зарегистрироваться повторно.
- Авторизация:
- Пользователь с введенными именем пользователя и паролем существует в системе.
- Пользователь с введенным именем пользователя не существует в системе.
- Пользователь с введенным именем пользователя существует в системе, но пароль неверен.
- Пользователь с введенными именем и паролем существует в системе, но заблокирован модерацией (страница заморожена).
- Валидация полей ввода.
- Проверка правильности заполнения всех обязательных полей:
- Максимальная и минимальная длина.
- Диапазон допустимых символов, специальные символы.
- Поля, обязательные к заполнению.
- Для всех обязательных полей отображается знак звездочки.
- Система не выводит окно ошибки, если необязательные поля не заполнены.
- Формы обратной связи.
- Ссылки на пользовательские соглашения.
- Регистрация:
- Поиск.
- Результаты существуют/не существуют.
- Правильное сообщение, если запрашиваемый элемент не найден.
- Пустой поисковый запрос.
- Поиск эмодзи.
- Поля.
- Числовые поля: они не должны принимать буквы, в этом случае должно отображаться соответствующее сообщение об ошибке.
- Дробные значения, например, как система проверяет 1.1.
- Отрицательные значения в числовых полях, если они разрешены.
- Деление на ноль обрабатывается корректно.
- Проверка максимальной длины каждого поля, чтобы убедиться, что данные не будут обрезаны или скрыты под многоточием.
- Проверка всех полей на возможность ввода специальных символов.
- Визуальная проверка, что текст не выходит за границы поля.
- Всплывающие сообщения.
- Проверка всплывающих сообщений (“Это поле ограничено N символами”).
- Для операций обновления и удаления отображаются подтверждающие сообщения.
- Сообщения об ошибках ввода.
- Фильтры.
- Проверка функциональности сортировки (по возрастанию, по убыванию, новизна).
- Проверка фильтров, у которых есть выходные данные.
- Проверка фильтров, у которых нет выходных данных.
- Фильтры по категориям/подкатегориям.
- Фильтры с радиусом поиска.
- Данные в раскрывающихся списках.
- Проверка функциональности имеющихся кнопок.
- Проверка наличия фавикона.
- Проверка обработки различных ошибок (страница не найдена, таймаут, ошибка сервера и т. д.).
- Проверка правильности отображения всех загруженных документов.
- Пользователь может скачивать/прикреплять/загружать файлы/медиа (картинки, видео и т.д.). А также удалять эти файлы из вложений. Сделайте так, чтобы файлы попадали на сервер только после нажатия соответствующей кнопки.
- Тестирование почтовой функциональности системы.
- Кэш, куки и сессии.
- Проверка очистки кэша браузера.
- Посмотрите, что произойдет, если пользователь удалит файлы cookie, находясь на сайте.
- Посмотрите, что произойдет, если пользователь удалит файлы cookie после посещения сайта.
- DevTools.
- Ошибки в консоли.
- Проверка загрузки стилей.
- Проверка загрузки изображений.
Интеграционное тестирование веб-приложения
Интеграционное тестирование проводится для того, чтобы убедиться в совместимости вашего приложения со сторонними сервисами.
Что мы проверяем?
- Работу сторонних модулей: оплата, обмен, карты.
- Рекламу (просмотр, клики по объявлениям, аналитика).
- Метрики (переходы по страницам, показ элементов, клики).
Тестирование безопасности веб-приложения
Эта проверка направлена на поиск недостатков и пробелов в безопасности приложения.
Что мы проверяем?
- Пользователь не может войти в систему: пароль устарел, пользователь заблокирован в сервисе, достиг предела авторизации, ввел чужой проверочный код.
- Страницы, содержащие важные данные (пароль, номер кредитной карты и CVC, ответы на вопросы безопасности и т.д.), открываются по протоколу HTTPS (SSL).
- Пароль скрыт звездочками на страницах: регистрация, “забыл пароль”, “смена пароля”.
- Сообщения об ошибках отображаются корректно.
- Завершение сеанса после выхода из системы.
- Доступ к закрытым участкам сайта.
- Инъекции SQL.
- Уязвимости межсайтового скриптинга (XSS).
- Инъекции HTML.
- Файлы cookie должны храниться в зашифрованном виде.
- Роли пользователей и доступ к содержимому.
Тестирование локализации и глобализации
Вам нужно убедиться, что приложение будет корректно работать и хорошо выглядеть независимо от того, в какой стране и на каком языке им пользуются. Тестирование интернационализации/глобализации включает в себя проверки работы приложения для различных языков, форматов дат, чисел и валют. Тестирование локализации предполагает проверки локализации строк, изображений и рабочих процессов для определенного региона.
Что мы проверяем?
- Дата и время. Например, отображение времени и даты в соответствии с часовым поясом пользователя.
- Язык. Проверка перевода всех элементов веб-приложения на выбранный язык.
- Выбор номера телефона с различными кодами стран.
- Определение местоположения пользователя и отображение соответствующего разрешения геолокации.
- Отображение соответствующих символов валют.
Тестирование удобства использования
Тестирование юзабилити веб-приложения включает в себя проверку навигации, содержания и другой информации для пользователя.
Что мы проверяем?
- Отсутствуют орфографические и грамматические ошибки, все страницы имеют правильные заголовки.
- Выравнивание изображений, шрифтов и текстов.
- Информационные ошибки, подсказки.
- Подсказки существуют для всех полей.
- Отступы между полями, столбцами, строками и сообщениями об ошибках.
- Кнопки имеют стандартный размер и цвет.
- На сайте нет битых ссылок и изображений.
- Неактивные поля выделены серым цветом.
- Проверка сайта на разных разрешениях экрана.
- При отображении чекбоксов и радиокнопок они должны быть доступны с клавиатуры, а пользователь должен иметь возможность пользоваться сайтом, используя только клавиатуру.
- Отображение выпадающих списков.
- Длинный текст скрыт под многоточием.
- Правильный выбор даты.
- Наличие плейсхолдеров в полях ввода.
- Логотип ведет на главную страницу сайта.
- Переходы и навигация между страницами и разделами меню.
Кроссплатформенное тестирование веб-приложения
Кроссплатформенное тестирование проводится для того, чтобы убедиться в совместимости вашего приложения с разными браузерами, оболочками и аппаратным обеспечением устройств.
Что мы проверяем?
- Тестирование в различных браузерах (Firefox, Chrome, Safari – минимальный набор): анимация, верстка, шрифты, уведомления и т.д.
- Тестирование в различных версиях ОС: Windows, Mac, Linux.
- Код Java Script работает в разных браузерах.
- Просмотр на мобильных устройствах.
Итоги
Мы ознакомились с универсальной шпаргалкой для тестирования веб-приложений. Не забывайте изучать документацию и дополнять чек-лист проверками, необходимыми для вашего сервиса.
Перевод статьи «WEB Application Testing Checklist».