📌 Эвристики и мнемоники в тестировании: что это и как применять — первая тема
С самого детства все мы запоминали цвета радуги с помощью фразы «Каждый охотник желает знать, где сидит фазан». Как оказалось, это самая известная нам мнемоника. В тестировании они также применяются. Так что это такое: эвристика и мнемоника?
Простыми словами, мнемоника — полезный инструмент, который помогает запомнить различные схемы разнообразных моделей тестирования, которые в будущем можно использовать на практике. А эвристика — специальный алгоритм, помогающий эффективно ориентироваться в пространстве при решении какой-то определенной задачи. Существует разнообразное количество инструментов и технологий мнемоники, которые помогают не упустить важные моменты при тестировании. Рассмотрим некоторые.
SFDPOT (Structures, Functions, Data, Platforms, Operations, Time):
✌🏻 Structure — структура приложения, проверка составляющих его частей. На данном этапе разрабатываются тестовые идеи и сценарии, связанные со структурой приложения.
🖖🏻 Function — функциональность приложения, проверка того, что приложение делает. На этом этапе разрабатывается функциональное тестирование программного продукта.
🤜🏻 Data — работа с данными; проверка того, как приложение работает с данными. Тестировщики должны узнать, с какими данными работает система, и разработать тесты, проверяющие, как система получает, обрабатывает и выдает различные виды данных.
🤘🏻 Platform — платформа; проверка того, как приложение взаимодействует с платформой, на которой запущено. Тестировщики должны определить, на каких платформах выполнять ручное и автоматизированное тестирование.
👌🏻 Operations — использование, проверка сценариев использования приложения. В этом пункте тестировщики должны выяснить, кто конечные пользователи тестируемого программного продукта, для каких задач пользователи собираются его использовать.
🤏🏻 Time — время, проверка того, как приложение ведет себя в зависимости от времени.
Самая известная мнемоника для тестирования мобильных приложений — I SLICED UP FUN.
🕴🏻 Inputs — входные данные (вводимые с клавиатуры или набираемые пальцем).
👨🏼🦽 Store — Хранилище. Android Market, например.
🧍🏾♂️ Location — Расположение (ошибки гео-координат, движение, быстрая остановка).
🧑🏻🦯 Interactions/Interruptions — взаимодействие / прерывания. Сворачивание приложение, когда играет музыка, например.
🏃🏻 Communications — входящий звонок, смс, уведомление.
👬 Ergonomics — мелкие детали напрягают глаза, ищите такие проблемы.
🧍🏿♀️ Data — Данные. Все, что приложение обрабатывает.
🕺 Usability — удобство использования.
🧑🏽🦼 Platform — для каких платформ выпущено ПО, где будет работать.
🧎🏻♀️ Function — Функционал.
👯♀️ User Scenarioes — пользовательские сценарии.
🤳🏻 Network — сеть.
RCRCRC — эвристика, применяемая для регрессионного тестирования.
👕 Recent — какие новые функции были добавлены в текущей итерации, что было изменено из уже существующего функционала.
🩱 Core — основные сценарии. Что должно всегда работать.
🥼 Risk — какой функционал имеет максимальные риски — его и проверяем.
👘 Configuration — на каких окружениях и в каких конфигурация должно работать.
👞 Repaired — какой функционал мы чинили в релизе. Ретест багов, как минимум самых важных.
🧣 Chronic — регрессия областей с хроническими болезнями (где чаще всего находились баги ранее).
Лично вам чужая мнемоника может подойти, а может и нет. Она может не подойти под вашу систему или под ваши процессы. Вы всегда можете написать свою мнемонику, которая будет под вас, под вашу команду, особенности вашего продукта и процессы.
#rdclr_QA
📎 В первой статье (VPN) вы прочитаете более подробно о преимуществах и недостатках тестовых эвристик, об «оракуле» — дополнительном эвристическом механизме.
Во второй — расшифровку самых известных мнемоник и эвристик и их описание.
Post #127
397