Рубрики
Uncategorized

Как создать успешную стратегию тестирования DevOps для Agile Teams

Дата срока: 23:59 вечера 25 октября 2021 г. Отчет о состоянии качества 2021 года не было бы здорово знать, как … помеченные DevOps, Agile, Test, Automation.

Дата срока: 23:59 вечера 25 октября 2021 г. Отчет о состоянии качества 2021 Разве не было бы здорово знать, как сверстники и эксперты остаются впереди своей игры по обеспечению качества? Вот почему мы создаем отчет о состоянии качества 2021 года, чтобы собрать лучшие практики QA от вас, специалистов всех уровней. Мы рады предложить Первые 100 респондентов — подарочная карта Amazon за 30 долларов , наряду с окончательным отчетом из результатов опроса. Повысь свой голос!

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

Как следует из определения, скорость и надежность являются двумя основными целями в стратегии тестирования DevOps.

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

Тестирование в DevOps

Так как же выглядит тестирование в среде DevOps? Две простые понятия: Автоматизация тестов и Непрерывное тестирование Анкет

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

Миф о том, что «автоматизация максимально возможна» всегда является стратегией при тестировании в DevOps, к сожалению, не соответствует действительности.

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

Некоторые примеры обыденных задач, которые не требуют вмешательства человека, включают:

  • Программное тестирование: Простая единица, Регрессия , или сквозные тесты обычно автоматизированы
  • Управление инфраструктурой: Уменьшите повторяющиеся настройки, конфигурации и обслуживание ИТ -инфраструктуры, таких как серверы и сети
  • Управление журналом: Инструменты автоматической регистрации помогут лучше обрабатывать больший объем данных, от запросов приложений до сообщений об ошибках
  • Мониторинг: Дает точное и современное отражение о тенденциях здоровья и производительности системы всех видов тестирования

Непрерывное тестирование

Непрерывность-это просто «необходимость» в процессе разработки и развертывания, чтобы придерживаться цели DevOps по качеству поставки.

Прежде чем углубляться при непрерывном тестировании, нам нужно сначала поговорить о CI/CD.

CI/CD короткий для непрерывной интеграции и доставки (или разработки).

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

Играя неотъемлемую роль в стратегиях автоматизации и тестирования DevOps, его четыре основных частях:

  • Непрерывная интеграция (CI): непрерывно интегрировать или объедините новые коды в центральный репозиторий (Mainline) и составьте их в сборки.
  • Непрерывное тестирование: проверка кода и качества продукта из его сборки с помощью автоматической мощности, интеграции или сквозных тестов для поиска ошибок или, если что-то не было.
  • Непрерывная доставка (CD): После того, как недавние представления кода подталкиваются к постановке, CD поддерживает разработчиков в вручную Квалифицированные кандидаты на выпуск Cherry-Pick для продвижения к производству
  • Непрерывное развертывание (CD): расширяет непрерывную доставку на автоматически Доставка каждую успешную сборку в производство перед проведением сквозных тестов, чтобы убедиться, что нет регрессий

Настройка стратегии тестирования DevOps для вашей команды

Мы ненавидим разбить его вам, но нет-нет единого размера для стратегии тестирования DevOps.

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

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

Погружение в тестирование мышления в мире DevOps

При подходе всей команды парадигма DevOps повышает стоимость общей собственности. DevOps также стремится снизить частоту передач или ручных подписей на протяжении всего жизненного цикла разработки программного обеспечения (SDLC).

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

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

В идеале процесс будет выглядеть примерно так.

Бекки, разработчик, пишет свой код на GitHub и передает его на основную линию. Затем она контролирует трубопровод, ожидая инструментов CI, таких как Jenkins, для запуска устройств и интеграционных тестов и просмотреть новые изменения, которые были внесены.

Здесь применение инструментов CI помогает определить ошибки интеграции, ошибки кода или логику ранее.

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

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

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

Поскольку коммиты Бекки были тщательно протестированы с помощью CI, большинство ошибок были зафиксированы заранее. Обычное время Джои для регистрации ошибок теперь очень освобождено.

Теперь он вручную изучит/проверяет новые изменения в постановке и разработке новых сценариев. После этого сквозные тесты также будут проведены с помощью инструмента тестирования автоматизации, такого как Katalon Studio или Selenium.

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

Стандартизация автоматизации и оркестровки

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

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

Какие тесты мне следует автоматизировать?

Определение того, что автоматизировать Полагается на такие факторы, как время выполнения, частота теста, требования к ресурсам и характеристики тестовых случаев. Пример того, что вы должен Автоматизация — это регрессионное тестирование, как это необходимо для каждого выпуска. Но экземпляр с исследовательским тестированием — это то, что вы не должна. Это связано с тем, что подобные тесты требуют личного суждения и получения понимания предыдущих тестовых прогонов.

Когда мне следует применить автоматизацию тестов?

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

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

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

  • Гранулярность: мера того, насколько интегрированы или изолированы ваши тесты
  • Изолированные тесты: Обратитесь к тестированию отдельных компонентов, которые являются менее связанный Из вашего приложения в целом (единичные и интеграционные тесты)
  • Интегрированные тесты: Посмотрите на тесты, которые превращаются в ваше приложение сверху вниз с точки зрения конечного пользователя (сквозные тесты)

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

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

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

  • Выбор правильного инструмента и структуры
  • Понимание оснований тестирования
  • Определение показателей производительности, чтобы увидеть паттерны прохода и провал
  • Разработка хорошей практики документации и использование их в процессе CI/CD

Как моя команда может вообще оптимизировать автоматизацию, CI/CD и трубопровод DevOps?

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

Непрерывный мониторинг

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

Чтобы сделать процесс мониторинга более гладким, ваша команда должна рассмотреть:

  • логирование
  • Мониторинг
  • Предупреждение
  • Отслеживание

Правильный инструмент и выбор

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

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

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

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

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

Katalon Studio и Testops — ключевые ингредиенты для любой стратегии тестирования в Fast Lane DevOps

К настоящему времени вы должны иметь возможность представить, какую стратегию тестирования, которая превосходит в культуре DevOps. Это много, но не невозможно достичь.

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

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

Katalon Studio и Теспировки это ведущий DevTeStops Комплект широко принят в более чем 100 000 предприятий экосистем. Вот представление о том, что вы можете сделать с ними.

Автоматизация тестирования и оркестровка сделана правильно. Как самый совместимый Селена альтернатива , Подход Katalon Studio с низким кодом ускоряется от стадии создания тестов до сокращения бремени по обслуживанию, используя:

  • Тестирование, управляемое ключевым словом
  • Механизмы самовосстановления
  • Умное ожидание
  • Модель страниц-объекта и поддержка проектирования BDD

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

Охватывает смену левые практики. Testops предоставляет совместную панель панели, позволяя разработчикам участвовать ранее в жизненном цикле тестирования. С нативными интеграциями в Top CI Tools (Например, Jenkins, Azure DevOps, Circleci), модульные испытания и отчеты об интеграции могут быть автоматически нарисованы, хранятся и централизованы в одно место. Это помогает:

  • Ускорить провальные или укористость расследование с историческими тенденциями
  • Оповещения запуска всех инцидентов прямо на общих платформах управления проектами (например, Slack and Jira)

Проактивный непрерывный мониторинг Анкет От инженеров QA до менеджеров и бизнес-аналитиков, Testops Platform организует все операционные и разработки в режиме реального времени и простой для понимания снимка. Команды могут извлечь выгоду из:

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

Мы надеемся, что эти идеи были полезны для вас, чтобы создать стратегию тестирования DevOps для вашей команды.

Помните, что идеальное решение для одной организации не обязательно будет лучшим для вашей. Помогли более 100 000 предприятий и команд настроить свои стратегии тестирования, просмотрите демонстрацию с экспертами Katalon, чтобы подготовить свой план с учетом и запущены со студиями и протоками.

Пост Стратегия тестирования DevOps появился первым на Каталон Решение Анкет

Оригинал: «https://dev.to/katalon/how-to-build-a-successful-devops-testing-strategy-for-agile-teams-2lfa»