Как создавать тестовую стратегию в 2020 году

Как создавать тестовую стратегию в 2020 году

  • 21 сентября, 2020
Вячеслав Сахаров
Вячеслав Сахаров Release Manager в Patrianna, Преподаватель Компьютерной школы Hillel.

Каждый проект по разработке программного обеспечения и соответствующих продуктов по-своему уникален и включает в себя: ресурсы, финансы, технологии, процессы, методологии, инструменты, и т.д. А это подразумевает необходимость создания такой же уникальной стратегии тестирования.

С чего начать стратегию?

Стоит определится, что тестовая стратегия — это набор планов, мыслей, методик и философии тестового процесса, а тестовый план — это конкретная инструкция к тому, как мы будем выполнять тестирование. В этой статье мы рассмотрим те известные и популярные методологии для создания тестовой стратегии, а также перейдем к практическим советам. И тому, как реализовать стратегию на практике, для того чтобы мы с вами поняли, во что превратилась тестовая стратегия в 2020 году. За последние годы тестовая стратегия кардинально изменилась и сильно отличается от тестовых стратегий, использовавшихся 3-4 года назад. Этому уделяют внимание на QA обучении онлайн.

Как определить стратегию?

В первую очередь, стратегия — это постоянный процесс, это ежедневная рутина и все аспекты работы команды тестирования. Показатель того, как ведем свои активы.

Тестовая стратегия — это набор идей и мыслей о том, как сам процесс разработки и тестирования должен происходить.

Тестировать без стратегии и плана — это как водить машину с завязанными глазами. Вы вроде едете, вроде жмете на газ, но непонятно — куда и зачем движетесь.

Как создать тестовую стратегию?

Чтобы сформулировать подходы, нам необходимо черпать вдохновение. И самым удобным способом для вдохновения является ознакомление с уже готовыми методологиями или просмотр существующих тестовых планов, найти их можно на просторах интернета. Каждый раз принимаясь за какую-то работу, необходимо проверять — не появились ли новые идеи и методологии, статьи и шаблоны на интересующую тему. Всегда можно что-то взять за основу и сформировать структуру стратегии.

Вдохновляемся различными источниками и создаем checklist:

  • Собираем идеи (для того, чтобы смотреть на них под разным углом и формировать свое мнение);
  • Сохраняем данные (для дальнейшего использования);
  • Формируем данные для checkpoint (для создания своего подхода к тестированию).

Рекомендуем курс по теме

Вдохновляемся различными источниками и создаем checklist

Зачем формировать тестовую стратегию?

Главная задача для тестирования стратегии — это цель. Стратегия без цели не является стратегией как таковой. И как же нам её сформулировать? Делим на две категории:

1. Бизнес-цели

Это цели бизнеса по достижению тех или иных результатов на рынке (повышение доли рынка, борьба с конкурентами, продвижение бренда и т.д.).

2. Внутренние нужды

Опишу на примере автоматизации. Если необходима автоматизация, то есть была поставлена цель или выбрано, что какая-то часть проекта будет автоматизирована. To что будет автоматизировано? На каком языке? Где? Как? Документ, который это будет описывать? Подход будет сформирован, а автоматизатор не будет автоматизировать в хаотичном порядке данный продукт. Он подходит к автоматизации с конкретной целью, чтобы помочь, например, минимизировать мануальное тестирование или уменьшить время на регрессию, то есть, то, что хорошо автоматизируется и дает хороший результат.
И когда мы определяем, для чего нужна автоматизация — это и есть тот момент, когда определяем конкретную цель. Это одна из сторон формирования тестовой стратегии.

Цели могут быть такими:

● Обеспечить покрытие до приемлемого уровня (вы не можете предоставить 100% покрытие, но вы должны сделать все возможное и гарантировать, что очевидные ошибки исправлены);

● Убедиться, что продукт отвечает оригинальным требованиям и спецификации;

● Обеспечить уверенность в надёжности ПО (пользователям, заказчикам и т.д.).

Вы хотите достигнуть более высоких оценок вашего пользователя. В результате от того, что вы будете достигать и будет формироваться ваша стратегия.

Goal-Analysis-Plan

Хорошо, с целью определились, что дальше? Проанализировать — насколько цель реальна.

Оптимально организовать цель по принципу SMART:

● S - Specific (Конкретность) - Описываем нашу цель в терминах конкретного результата;

● M - Measurable (Измеримость) - Измеряем с помощью конкретных индикаторов и стандартов процедур;

● A - Attainable (Достижимость) - Цель должна быть реалистичной, достижимой в принципе;

● R - Relevant (Уместность) - Следующий этап — обосновать, доказать, что цель необходима;

● T - Time-bound (Ограниченность во времени) - Цель должна быть четко определена во времени (конкретные сроки и конкретные точки).

Если наша цель измерима, то измерение цели — это фиксация данного результата, что и является частью нашего тестового плана.

На этом этапе появляется понимание задания и точки отсчета, в которой мы находимся в данный момент, то есть наше текущее состояние.

В 2020 году мы должны адаптировать стратегию под реалии. Новые реалии изменяют стратегию и этапы тестирования, но не изменяют поставленную цель.

Какие подходы стоит применять?

Все изложенные ниже подходы и активности в большей или меньшей мере используются и выполняются тестировщиками на практике. Методы будут полезен для представителей всех технических направлений, особенно для QA Lead и тех, кто пока лишь задумывается о том, как построить процесс тестирования в компании.

● Подход, основанный на теории ограничений

Теория ограничений заключается во влиянии ограничений внутри процесса, необходимых для удержания качества продукта или тестирования на стабильно высоком уровне в целях повышения положительного результата. Подход настаивает на фокусировании внимания на самых жестких ограничителях и построении критической цепи. Плюсом такого метода является достижение быстрых результатов, на которые мы можем повлиять.

● Японский подход

Японский подход настаивает на подробной декомпозиции задач, разбиении их на более мелкие. Такой подход выступает за постепенное улучшение всех процессов, улучшая все аспекты одномерно и небольшими порциями.

● Принцип Парето

Принцип Парето основан на эмпирическом правиле «20% усилий дают 80% результата, а остальные 80% усилий –— лишь 20% результата». Когда беремся за все аспекты одновременно, то за наибольшее количество действий в каждом из направлений мы получим высокий результат от процесса.

● Методология «TPI Next model»

Такая методология основана на зрелости. Эта модель объясняет, как поэтапно или в каких процессных областях необходимо достигать определенных результатов для формирования качественного тестового процесса. Методология сконцентрирована на необходимых действиях, чтобы улучшить тестовый процесс.

● Метод швейцарского сыра

Если вы не можете представить и увидеть какой-то процесс и как в целом выглядит задача — берёте малоизвестный, но проверенный опытом, метод швейцарского сыра. Сначала видим в сыре дырки и начинаем их прогрызать. Делать дырки можно в произвольном порядке, начиная с тех мест, что уже можем выполнить и знаем, как это их выполнить. Помогает метод не только при построении стратегии, но и при решении больших задач. Чем сильнее «изъедена» задача, тем меньше времени уйдет на ее решение.

Тестовая стратегия помогает только в том случае, если мы имеем конкретную цель. В качестве цели можно выбрать улучшение качества, достижение высокого покрытия, ускорение процесса тестирования, уменьшение количества багов. По каждому из этих пунктов главной целью является хороший результат. Поэтому затраты сил на разработку и внедрение стратегии того стоят.

Постоянно вдохновляйтесь новыми статьями, шаблонами, подходами и формируйте свое мнение для тестового плана. При этом каждую активность проверяйте, анализируйте и аргументируйте.

Наполняйте свой checklist идеями. Смотрите, какие появились новые идеи и методологии, планы и шаблоны на интересующую тему.

И обязательно адаптируйте подход под реалии — это отличная страховка в очень переменчивом мире.