Официальные сертификации DevOps

Текстовый курс по DevOps

Зачем вашей организации DevOps автоматизация тестирования?


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

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

Тесты можно автоматизировать,
а создавать качество по-прежнему должны люди

Команде DevOps следует автоматизировать как можно больше тестов. Тестирование можно автоматизировать, но способность команды мыслить и создавать качественные решения — нельзя. Не расходуйте время специалистов на повторяющуюся и воспроизводимую работу, которую может выполнить ПО.

Принципы эффективной автоматизации тестирования в DevOps

  • Автоматизация тестирования должна обеспечивать быструю и своевременную обратную связь о качестве вашей работы.
  • Тесты должны давать согласованные, детерминированные и воспроизводимые результаты, если условия разных запусков одинаковы.
  • Тесты не должны давать ложноположительные результаты.
  • Небольшое число надёжных автоматизированных тестов лучше большого числа ненадёжных ручных тестов, которые при одинаковых условиях разных запусков могут давать разные результаты.
  • Сначала автоматизируйте проверку ключевых функций и возможностей, которые системы предоставляют внутренним и внешним клиентам. Даже этот уровень автоматизации намного лучше её полного отсутствия.
  • Затем автоматизируйте как можно больше тестов, чтобы как можно эффективнее использовать время и знания участников команд DevOps.
  • При автоматизации тестирования избегайте медленной и периодической обратной связи. Вам нужна быстрая обратная связь при каждой попытке вашей или другого разработчика внести код в основную ветку.
  • Если автоматизированные тесты работают недостаточно быстро, найдите способ ускорить тесты или само ПО. Это важно и для надёжности платформы непрерывной поставки и конвейера развёртывания, и для высокого качества обслуживания клиентов. Чтобы ещё больше ускорить тесты, выполняйте их параллельно.
  • Рассмотрите разработку через тестирование. Сначала напишите автоматизированные тесты, затем создавайте ПО.

Автоматизация тестирования — основа непрерывной поставки и конвейера развёртывания

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

Разработчики смогли преодолеть этот страх только после того, как команды DevOps обеспечили всестороннее и надёжное покрытие автоматизированными тестами.

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

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

Какие виды тестирования можно автоматизировать

  • Модульные тесты Проверяют отдельные функции, классы или модули приложений.
  • Приёмочные тесты Проверяют функции и возможности, которые приложения предоставляют клиентам.
  • Интеграционные тесты (тесты сервисов) Проверяют взаимодействие приложений и работу всей цепочки сервисов.
  • Тестирование производительности и стресс-тестирование Проверяет, как сервисы масштабируются или не масштабируются при ожидаемой и непредвиденной нагрузке клиентов. Это особенно важно для самых востребованных сервисов.
  • Нефункциональные тесты Проверяют безопасность, доступность, ёмкость и масштабируемость.

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

ВЫВОДЫ

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

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



ВАШ КУРС DEVOPS

Оглавление

Записаться на сертификацию

Мы гарантируем, что с бесплатным онлайн-обучением вы сдадите экзамен на сертификацию DevOps!

  1. 01

    Зарегистрируйтесь онлайн

    Выберите аккредитованную программу и завершите регистрацию.

  2. 02

    Получите код доступа

    Ваш персональный код доступа к экзамену сразу поступит на электронную почту.

  3. 03

    Подготовьтесь и сдайте экзамен

    Пройдите бесплатное обучение и ответьте онлайн на 50 вопросов с вариантами ответов.

  4. 04

    Получите бессрочный документ

    Получите сертификат, действующий во всём мире, и цифровой значок, подлинность которого можно проверить.

Образец Certified DevOps Generalist™
Записаться на сертификацию

ВАШЕ БЕСПЛАТНОЕ ПРЕМИАЛЬНОЕ ОБУЧЕНИЕ ОНЛАЙН

Получить третье издание DevOps Revealed

Мы подготовили этот курс вместе с группой признанных руководителей бизнеса и команд, коучей, наставников и экспертов DevOps ведущих отраслей. Курс доступен всем посетителям International DevOps Certification Academy™. Чтобы найти материалы, воспользуйтесь соответствующими ссылками Ваша бесплатная книга о DevOps и Ваше бесплатное обучение DevOps премиум-класса в главном меню.

Авторские права на материалы принадлежат International DevOps Certification Academy™. Мы предоставляем их всем бесплатно, потому что обмен опытом помогает специалистам DevOps и развитию этой области.

Экзамен состоит из вопросов с вариантами ответов. Изучите онлайн-материалы, чтобы получить знания для сдачи экзамена и получения сертификата DevOps.

Мы гарантируем, что с бесплатным онлайн-обучением премиум-класса вы сдадите экзамен на сертификацию DevOps!