Каждый тестировщик на определенном этапе своего профессионального развития имеет некий технический опыт. Очень полезно будет постоянно его «подпитывать» новыми знаниями и технологическими приемами, которые не только расширяют профессиональный кругозор, но и наполняют сознание определенными возможностями понимания вещей, которые ранее трактовались неверно.
Ознакомившись с материалом этой статьи, вы сможете по-новому взглянуть на такие понятия как эвристика и мнемоника, узнать зачем они применяются и чем полезны непосредственно в сфере тестирования.
По сравнению с другими методами и приемами, способ эвристической оценки гораздо проще и быстрее. С его помощью можно легко найти все имеющиеся проблемы внутри тестируемого продукта, потратив на это минимальные временные затраты (то же самое касается и материальных ресурсов).
Открывая для себя всевозможные эвристики и мнемоники, тестировщик запросто может расширить свои взгляды на потенциальные проблемы внутри разрабатываемого веб-продукта, а также разработать новые подходы непосредственно к процессу тестирования. Умения использовать тестовые эвристики могут существенно повысить эффективность процесса тестирования любого продукта или веб-компонента.
Понятие эвристики и мнемоники
Процесс тестирования на основе эвристик – это такая технология тестирования алгоритмов, приложений и программ, при использовании которой стратегия тестирования основывается на предыдущем опыте и данных о вероятности наступления различных событий.
Мнемоника – это набор правил и приёмов, которые помогают эффективно запоминать необходимые сведения (информацию).
Ключевые преимущества тестовых эвристик:
- Они позволяют не забывать контекст, в котором непосредственно и используется тестируемое приложение или продукт;
- Краткость. Все эвристики удобно помещаются в небольшие диаграммы связей, листок бумаги или же в текстовый файл;
- С помощью эвристик можно проводить качественное исследовательское тестирование утилит в более детализированном формате;
- Они помогают не совершать ошибки, что могут быть допущены при аналогичных обстоятельствах во время тестирования похожего программного обеспечения. Философия использования эвристик позволяет разрабатывать специальные «напоминания» на базе предыдущего опыта – личного или наработок других QA специалистов.
Но при всем этом, эвристика – метод крайне несовершенный. Ее базовый недостаток в том, что эвристическая оценка не может предполагать применение пользовательского тестирования и анализа выполнения настоящих сценариев, ее итоги могут быть чрезвычайно субъективными и необоснованными с практической стороны.
Исследовательское тестирование – это 2 стороны одного и того же процесса проверки веб-продукта. А значит, квалифицированные тестировщики не могут полагаться исключительно на исследовательскую составляющую процесса проверки. После использования эвристического механизма, с помощью которого можно найти проблемы в тестовой среде, важно заранее составить тест-кейсы и чек-листы.
Эвристика всецело относится к особой технике тест-дизайна, которая основывается на предыдущем опыте и помогает принять правильное решение при определении необходимой задачи.Эвристический метод непосредственно используется в ситуациях, когда необходимо принять быстрое решение, которое будет максимально приближено к оптимальному.
Эвристический алгоритм – это особый алгоритм поиска решения возникшей задачи, верность которого для всех потенциальных случаев еще не доказана, но который предоставляет наиболее верное решение в половине случаев применения.
Мы уверенны, что каждый квалифицированный тестировщик обладает сугубо своим набором эвристик, постоянно применяемых в процессе тестирования ПО. Они накапливаются с опытом, и чтобы максимально в них разбираться, необходимо понять, как потенциально мыслят другие люди, а также уметь самостоятельно описать личностный мыслительный процесс.
Именно с помощью эвристик и мнемоник можно научиться описывать процесс тестирования.
Фундаментальные отличия эвристики от мнемоники
Мнемоника – специальный инструмент, с помощью которого можно научится запоминать данные наиболее простым и доступным методом. Традиционно мнемоника работает как шаблонный ключ к тому, что именно вы желаете запомнить, но она не говорит вам ничего касательно того, что конкретно вы пытаетесь запомнить.
Эвристика – это своего рода «правило большого пальца», применяемое для мгновенного измерения какой-либо тестовой величины. В сфере тестирования она обычно используется для запоминания поведения утилит с целью мгновенного поиска потенциальных проблем.
Понятно, что главная причина их логического взаимодействия заключается в следующем: мнемоника крайне часто требуется для того, чтобы не забывать об эвристике. Все, что мы совершаем и применяем в тестировании, является эвристическим. Каждая модель, методы и план тестирования – эвристика.
Применяя мнемонику, есть возможность быстро генерировать различные идеи для тестирования веб-продукта, который, в свою очередь, может стать катализатором будущего использования эвристики.
Мнемоника – крайне полезный инструмент, помогающий припомнить различные схемы разнообразных моделей тестирования, которые в будущем можно использовать на практике. Эвристика – это специальный алгоритм, помогающий эффективно ориентироваться в пространстве при решении какой-то определенной задачи.
Когда набор идей для тестирования заканчивается, всегда можно прибегнуть к эвристике, которая подскажет, что еще можно выполнить (проверить, протестировать). Необходимо использовать опыт других тестировщиков. Осознание того, как мыслят другие QA, помогает максимально разнообразить собственный подход к процессу тестирования.
SFDPOT & CRUCSPIC STMP: что такое и зачем необходимы
Любой специалист по тестированию рекомендует использовать самые разные инструменты и технологии мнемоники. Именно с их помощью фокусируется развитие будущих тестовых работ.
Они позволяют не только находить критические ошибки в продукте, но и выяснить логику появления таких багов в будущем. Согласитесь, что это очень хорошо, ведь постоянно полагаться на логику и интуицию не всегда бывает правильно и эффективно.
Большинство экспертов с мировым именем в сфере тестирования настоятельно рекомендуют использовать проверенную схему SFDPOT, автором которой является Джеймс Бах. По их словам, это самый качественный и правильный инструмент для быстрой генерации тестовых идей и наработок.
Итак, что такое SFDPOT?
SFDPOT – Structures, Functions, Data, Platforms, Operations, Times:
- Structures – архитектура приложения (продукта), которая проверяется по частям. На этом этапе создаются тестовые идеи и шаги, неразрывно связанные со структурой веб-продукта;
- Function – производительность приложения (продукта). Проверка того, что может выполнять приложение (продукт). На этом этапе проводится функциональное тестирование ПО;
- Data – взаимодействие с данными. Проверка приложения на взаимодействие с данными. QA специалисты должны определить по какой логике продукт взаимодействует с данными, как проходит их получение, тип обработки и виды информации;
- Platform – экосистема, платформа. Выполнение проверки того, как именно приложение (продукт) потенциально взаимодействует с платформой, на которой оно создано и запущенно. Тестировщик должен определить, на каких именно платформах и внутри каких систем необходимо провести процедуру ручного и автоматизированного тестирования;
- Operations – проверка созданных сценариев для разработанного приложения. На этом этапе перед тестировщиками постает задача по выяснению потенциального круга будущих пользователей, которые будут взаимодействовать с создаваемым продуктом;
- Time – период времени, проверка того, как продукт ведет себя в зависимости от наступления или завершения каких-либо временных промежутков.
Подобным методом также активно оперирует в своей практике Карен Н. Джонсон, мировой эксперт в сфере тестирования ПО. По его логике, этот метод позволяет понять веб-окружение, в котором будет проводиться тестирование с точки зрения масштабов, времени и ресурсов – фундаментальных вершин треугольника качества ПО.
Что же касается CRUCSPIC STMP, то этот метод может рассматриваться как составная часть Operations внутри методики SFDPOT.
Если вкратце сказать о функциональности CRUCSPIC STMP, то можно отметить, что это своего рода атрибуты системы. Наработки CRUCSPIC STMP позволяют выделить основные объекты тестирования, его целей, а также построить карту эффективности взаимодействия между собой.
Применение на практике эвристик и мнемоник
Осознание того, как именно мыслят другие тестировщики, помогает одному конкретному специалисту варьировать личностный подход к процессу проверки ПО. Вместо того, чтобы монотонно отыскивать похожие баги, специалист может значительно расширить горизонты своего профессионального мышления.
Понятие «эвристика» можно понимать как «некоторая принятая практика». Путем накопления опыта и методом совершения ошибок, опытные тестировщики вырабатывают кучу собственных методик и логик для тестирования. Но более половины QA специалистов не знают, что есть навыки исследовательского тестирования, которые еще можно развить в себе, и которые могут принести определенную пользу на проекте.
Один из вариантов демонстрации эффективности работы тестировщика – грамотное исследовательское тестирование. Умелые QA постепенно вырабатывают аналитические и исследовательские навыки, которые позволяют со 100% уверенностью оперировать выбранными инструментами тестирования, которые есть у каждого из нас – человеческим мышлением.
Особенность исследовательского тестирования в том, что оно естественным образом «затягивает» тестировщиков. В фирмах и корпорациях, где поощряются сценарные процессы, тестировщики даже не догадываются о существовании и других способов тестирования, кроме как написание тест-кейсов и выполнение чек-листа.
Кроме этого, любые проекты по созданию ПО так или иначе сопряжены с некоторыми рисками, а вот исследовательское тестирование позволяет специалисту быстро адаптироваться технически под новые риски. QA инженеры, которые научились использовать свой личностный потенциал во время тестирования, создали вариации управления своим мыслительным процессом в период тестов.
Опытные тестировщики-исследователи запросто используют логические хитрости, чтобы длительное время сохранять своё мышление острым и максимально последовательным. Две хитрости, применяемые тестировщиками для быстрой тренировки мышления – это эвристика (вариации к решению проблем) и мнемоника (тренинг памяти).
Удивительно, но не только каждая буква мнемоники позволяет придерживаться шаблонной последовательности при выполнении тестирования, но и вся аббревиатура помогает быстро создавать множество полезных тестов на всех участках проверки создаваемого продукта. Дополнительно стоит использовать сторонние мнемоники и эвристики уже по ходу выполнения процесса тестирования, если обнаруживаются участки для исследования иного плана.
Итоги
Любое тестирование использует классическое наблюдение, а значит, метод проб и ошибок может быть эффективным. Но он гораздо продуктивней тогда, когда существует система, к которой этот метод может запросто подойти.
Широкое разнообразие исследовательского тестирования в потенциале может стать одним из наиболее важнейших способов в мышлении тестировщика.
Оставить комментарий