Маркетинг-кит

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

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

Задача тестировщика — предусмотреть все эти сценарии, пройти путь пользователя, зафиксировать баги, сформировать задание на исправление и убедиться, что найденные ошибки устранены. Тестирование сайта проводится для снижения рисков бизнеса. Баги — это нечто, что снижает ценность продукта. Если пользователь не сможет выполнить нужное ему действие, он не будет разбираться, а просто уйдет к конкурентам.

Что проверяется в ходе тестирования

В первую очередь тестировщик проверяет, что те функции и требования, которые были заложены на этапе планирования проекта, работают. Наиболее частые пункты тестирования:

  • проверка работы функционала,
  • кросс-браузерность,
  • адаптив,
  • соответствие макету.

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

Также в задачи тестировщика входит оценка юзабилити сайта — проверка удобства навигации и прохождение различных пользовательских сценариев.

Когда в работу с сайтом включается тестировщик

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

Этапы тестирования

Планерки на этапах прототипов и дизайна

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

Первичное знакомство с сайтом

Этот этап также называют оценкой learnability. Есть лишь единственный шанс впервые взглянуть на получившийся продукт свежим взглядом и дать оценку с точки зрения удобства пользования. Learnability является частью usability сайта и отражает способность интерфейсов быть понятными пользователям с первого знакомства, давать возможность эффективно использовать все функции и возможности готового продукта. Этот этап важен, так как затем представление уже будет искажено знаниями. Мы уже будем знать, как двигаться по сайту, как это было задумано разработчиками. Здесь тестировщик равен в знаниях о продукте с обычным пользователем — он не пользуется техническими заданиями и макетами.

На этом этапе выявляются очевидные баги, такие как:

  • «ничего не работает» — что-то мешает пользоваться основными функциями сайта,
  • проблемы с удобством навигации и совершением целевых действий,
  • попутно замеченные баги, которые сразу фиксируются,
  • неполная спецификация (неполное техническое задание или алгоритм работы узкого специалиста).

Аналитическая часть работы и работа по плану

На этом этапе проводится необходимая аналитика и составляется план действий, а также приоритеты на тестирование. Далее тестировщик работает по плану в соответствии с наработанными чек-листами, тест-кейсами, инструментами и техниками. Составленный список правок отдается специалистам, и дальше тестировщик работает параллельно с ними.

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

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

Исправление правок первой итерации, проверка правок, доработки

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

Регрессионное тестирование, вторая итерация (перепрогон и перепроверка всех возможных состояний)

Вторая итерация бывает не всегда. Ее наличие зависит от проекта, его объема, времени между этапами разработки и т. д. Решение о целесообразности проведения регрессионного тестирования принимается менеджером проекта совместно с тестировщиком.

Ретроспектива и внутренняя аналитика

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

Ретроспектива помогает:

  • оптимизировать затраты времени на рутинную работу,
  • вскрыть проблемы в коммуникации команды,
  • проанализировать задачи — зафиксировать, на каких этапах были вопросы, проблемы,
  • собрать статистику, чтобы в будущем давать более точные оценки трудозатрат,
  • провести анализ плюсов (как масштабировать удачные моменты) и минусов (как их избежать),
  • провести анализ эффективности тестирования.

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