Виктор Захаров – Тестирование программного обеспечения. Занимательная практика (страница 6)
Граничные значения и нестандартный ввод данных. При тестировании фильтров необходимо убедиться, что они правильно обрабатывают как минимальные, так и максимальные допустимые значения. Например, если фильтр предназначен для отбора товаров по цене, нужно проверить, что фильтрация корректно работает при установке предельных значений (минимально возможной и максимально возможной цены). Также следует протестировать фильтры с нестандартным вводом данных, такими как отрицательные числа, нули или очень большие значения, чтобы убедиться, что система правильно отрабатывает такие случаи. Это может включать как правильную фильтрацию, так и вывод предупреждений или сообщений об ошибках, если введённые данные не подходят.
Динамическое обновление данных. Если данные, подлежащие фильтрации, могут динамически обновляться (в реальном времени) необходимо убедиться, что фильтры корректно реагируют на изменения данных. Это означает, что если в приложении данные обновляются или добавляются динамически (например, новые товары на складе или изменения в списке доступных услуг), результаты поиска должны мгновенно отражать эти изменения при включённых фильтрах. Пользователь должен видеть актуальные результаты, соответствующие выбранным критериям, без необходимости вручную обновлять страницу или повторно применять фильтры.
Тестирование вкладок
Вкладки позволяют организовать содержимое в логически разделённые секции, доступные для просмотра без перезагрузки страницы.
Рассмотрим основные аспекты, требующие внимания при проверке вкладок.
Переключение между вкладками. При тестировании вкладок необходимо убедиться, что переключение между ними происходит корректно и отображается соответствующее содержимое для каждой активной вкладки. Переключение должно происходить без перезагрузки всей страницы или формы приложения. Каждая вкладка должна отображать именно то содержимое, которое соответствует её названию, и это содержимое должно быть доступно сразу после переключения, без задержек или ошибок.
Состояние активной вкладки. Активная вкладка всегда должна чётко выделяться визуально среди других. Это может быть достигнуто с помощью цветового выделения, изменения шрифта, подчёркивания или других визуальных эффектов, чтобы пользователь сразу мог определить, какая вкладка активна. Кроме того, при переключении между вкладками необходимо проверить, что состояние активности корректно обновляется – предыдущая вкладка теряет выделение, а новая вкладка становится активной и выделяется соответствующим образом.
Выбор по умолчанию. При первом открытии страницы или формы приложения автоматически должна активироваться определённая вкладка, как это предусмотрено требованиями. Обычно это первая вкладка, но могут быть исключения в зависимости от специфики приложения. Сразу после загрузки страницы должно отображаться содержимое этой активной по умолчанию вкладки без необходимости дополнительных действий со стороны пользователя.
Сохранение состояния. Проверяем, что при перезагрузке страницы или возвращении на неё активная вкладка сохраняет своё состояние и остаётся активной, если это предусмотрено логикой работы приложения. Это означает, что если пользователь переключился на определённую вкладку и затем перезагрузил страницу, то после перезагрузки именно эта вкладка должна автоматически открыться снова вместе с соответствующим ей содержимым.
Фокус. При переключении на новую вкладку фокус должен перемещаться на связанное с ней содержимое или на саму вкладку. Это помогает пользователям, использующим клавиатуру или вспомогательные технологии, быстро ориентироваться в приложении. После переключения фокус может быть установлен либо на определённый элемент содержимого вкладки, либо на саму вкладку, что позволит пользователю сразу начать взаимодействовать с нужной частью приложения.
Быстродействие. Необходимо убедиться, что переключение между вкладками происходит быстро и без заметных задержек, даже если содержимое вкладок объёмное. Пользователь не должен испытывать задержек при переходе от одной вкладки к другой, так как это может снизить эффективность работы с приложением. Тестирование должно включать сценарии с большим объёмом данных или сложными элементами внутри вкладок, чтобы убедиться, что приложение справляется с задачей без снижения производительности.
Взаимодействие с URL. При переключении между вкладками URL страницы должен корректно обновляться, если это предусмотрено функциональностью приложения. К примеру, URL может содержать якоря (например, #вкладка1) или параметры (например, ?tab=2), что позволяет пользователю сохранить или отправить ссылку, ведущую непосредственно к определённой вкладке. Это также полезно для улучшения навигации, поскольку пользователь может вернуться на нужную вкладку или поделиться ссылкой на конкретное содержимое. Тестирование должно включать проверку того, что URL корректно обновляется при переключении между вкладками и что при переходе по обновлённому URL открывается соответствующая вкладка с правильным содержимым.
Взаимодействие с другими элементами. Оцениваем, как переключение между вкладками влияет на другие элементы интерфейса, особенно если содержимое вкладки содержит в себе интерактивные элементы или формы. Необходимо убедиться, что при переходе на другую вкладку интерактивные элементы, такие как кнопки, поля ввода или другие формы, работают корректно и сохраняют своё состояние, если это предусмотрено логикой приложения. Важно проверить, что данные, введённые в форму на одной вкладке, не теряются при переключении на другую вкладку и обратно и что все элементы продолжают функционировать без ошибок.
Изменение внешнего вида при наведении. Необходимо убедиться, что стиль вкладок изменяется при наведении на них курсора мыши, чётко указывая на их интерактивность. Это может включать изменение цвета, добавление подчёркивания, изменение шрифта или смену курсора на указатель руки. Эти визуальные изменения помогают пользователю понять, что вкладка является активным элементом интерфейса, с которым можно взаимодействовать.
Тестирование меню приложений
Меню приложения – это список доступных функций или опций, который обычно располагается в верхней части окна приложения или в отдельной панели. Меню может включать в себя выпадающие списки, контекстные меню, меню на панели инструментов и другие элементы интерфейса, позволяющие пользователям взаимодействовать с приложением. В меню можно найти команды для открытия файлов, настройки параметров, выполнения операций и другие возможности.
На картинке видим меню, имеющее пункты «Файл», «Изменить», «Просмотр» с вложенными пунктами меню (подменю):
Выделим и обсудим основные аспекты, на которые стоит обратить внимание в процессе тестирования меню приложения.
Доступность функций. При тестировании меню приложения важно убедиться, что все заявленные функции доступны через меню и работают корректно. Убеждаемся, что все пункты меню ведут к нужным разделам или функциям приложения, как это предусмотрено спецификацией. Пользователь должен иметь возможность находить и использовать все основные и дополнительные функции через меню.
Вложенные меню. При проверке меню с вложенными подменю важно убедиться, что они корректно раскрываются и остаются полностью работоспособными. Проверяем, что при наведении курсора или клике на пункт меню соответствующее подменю плавно и без задержек открывается, отображая все свои элементы. Также следует убедиться, что все элементы внутри подменю активны, вызывают требуемые функциям или ведут к требуемым разделам приложения.
Горячие клавиши. Если для активации действий пунктов меню предусмотрены горячие клавиши, важно убедиться в их корректной работе и отсутствии конфликтов с другими командами. Убеждаемся, что нажатие соответствующих клавиш действительно приводит к выполнению ожидаемых действий, связанных с пунктами меню. Также следует убедиться, что горячие клавиши не конфликтуют с другими командами или системными сочетаниями клавиш, чтобы избежать нежелательных действий или путаницы. Тестирование должно охватывать все заявленные горячие клавиши, включая различные комбинации, чтобы гарантировать их надёжную работу и удобство использования для пользователя.
Логика расположения. Проверяем, что пункты меню организованы логически и интуитивно понятно, чтобы пользователи могли без труда находить нужные функции. Логика расположения должна отражать частоту использования и взаимосвязь между функциями – наиболее важные и часто используемые элементы должны быть легко доступны и находиться на видных местах. Пункты меню группируются по смыслу или категории, чтобы пользователи сразу понимали, где искать нужную опцию.
Отзывчивость. Необходимо убедиться, что меню работает быстро и без задержек, обеспечивая комфортное взаимодействие для пользователя. Это означает, что при клике или наведении курсора меню должно мгновенно открываться, предоставляя доступ к своим пунктам, и также быстро закрываться, когда пользователь завершил взаимодействие.
Адаптация под условия использования. Меню должно адаптироваться к различным условиям использования. Это означает, что необходимо проверить, если применимо, чтобы меню изменяло состав пунктов меню в зависимости от текущего контекста, активных модулей или задач, выполняемых пользователем. Например, меню может отображать разные наборы опций в зависимости от того, какой раздел приложения открыт или какие действия недавно были выполнены.