Убьет ли непрерывная доставка тестировщиков ПО?
Джастин Рорман

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

Подробнее о тестировании программного обеспечения и непрерывной разработке читайте на сайте techwell.com

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

Итак, что это делает с тестированием?

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

У большинства agile-магазинов есть частота релизов. Ожидается, что каждые две недели команда разработчиков будет отправлять клиентам партию нового программного обеспечения. И для многих эта каденция выглядит как сжатый водопад: несколько дней на обсуждение изменений, несколько дней на разработку и несколько дней на тестирование и исправление ошибок. Может быть, это не «настоящий» agile, а может быть, agile реализован плохо, но это то, что я вижу чаще всего.

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

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

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

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

Роль тестирования со временем изменится, но я не думаю, что она никуда не денется.

Статьи по теме
4 способа улучшить тестирование современного программного обеспечения
Часть конвейера: почему непрерывное тестирование необходимо
Тестирование достаточно на каждом этапе Ваш канал доставки

Первоначально опубликовано на www.techwell.com.