Лучшие практики для непрерывного тестирования в Agile

В Agile, где мы часто выпускаем программное обеспечение в производство, нам необходимо обеспечить высокое качество программного обеспечения. на протяжении всего развития . Нам нужно тестировать рано, и нам нужно тестировать часто.

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

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




Бережливое тестирование

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

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


Сотрудничать с бизнесом

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


  • QA должен строить тесные отношения с бизнес-аналитиками.
  • Удалите двусмысленность из пользовательских историй - убедитесь, что каждая пользовательская история тестируется и включает критерии приемки .
  • Не игнорируйте нефункциональные тесты, такие как тестирование производительности и безопасности. С самого начала проекта проводите как функциональное, так и нефункциональное тестирование.
  • Создавайте осмысленные сценарии сквозного тестирования, используя тенденции, данные и аналитику с рабочего веб-сайта для сбора информации о действиях пользователей и путешествия пользователя через приложение.


Внедрить практику обеспечения качества

  • Создайте сильную практику тестирования / обеспечения качества, которая будет стимулировать разработку. Определить Стратегия Agile QA-тестирования .
  • Регулярно проводите семинары по обеспечению качества, на которых тестировщики могут улучшить свои технические навыки, а также навыки межличностного общения.
  • Внедрите соответствующие методы тестирования, используя диаграммы технической архитектуры, модели приложения и интеллектуальные карты.
  • Внедрите QA в команды , чтобы они знали обо всех изменениях в приложении.


Автоматизировать тестирование

Непрерывное тестирование требует раннего тестирования и частого тестирования. Мы можем использовать автоматическое тестирование, чтобы быстро получать отзывы о статусе приложения.

  • Применять Лучшие практики по автоматизации тестирования
  • Знать когда автоматизировать тесты, а когда оставить их как ручные тесты
  • За автоматизацию тестирования отвечают как разработчики, так и тестировщики.
  • По возможности автоматизируйте регрессионные тесты, а также нефункциональные тесты производительности и безопасности.
  • Убедитесь, что вы следуете Пирамида автоматизации тестирования принцип за счет увеличения количества автоматических модульных тестов, тестов API и интеграции, и лишь небольшого числа автоматических тестов через пользовательский интерфейс.
  • Запускайте автоматические тесты с сервера непрерывной интеграции (CI).
  • Создавайте пакеты дымовой регрессии, которые работают быстро, и запускайте их так часто, как обновляется приложение.
  • Автоматизируйте новые функции и истории по мере разработки, а не оставляйте их на потом.


Автоматизировать развертывание

  • Чтобы получить максимальную отдачу от непрерывного тестирования, шаги на каждом этапе должны быть плавными, бесперебойными и автоматизированными.
  • Вместо того, чтобы ждать, пока DevOps развернет последнюю версию в тестовой среде для тестирования QA, этот процесс следует автоматизировать.
  • Объятие Автоматизация задач . Автоматизация предназначена не только для тестирования и проверки. Любую повторяющуюся тяжелую ручную работу следует автоматизировать.
  • Стандартизируйте тестовые среды, чтобы развертывание в разных средах происходило гладко, а результаты автоматизированных тестов были надежными.
  • Используйте визуализацию для масштабирования автоматизированного тестирования и получения быстрой обратной связи.