Искусственный интеллект совершает революцию в тестировании программного обеспечения:от быстрой автоматизации к стратегическому пониманию
Я вижу, что благодаря тестировщикам, дополняющим агентный ИИ, тестировщики начинают продвигаться вверх по цепочке создания стоимости:я вижу, что они тратят больше времени на размышления о том, что и почему следует тестировать, а не о том, как. Я вижу, как они больше рассуждают о системах, пользователях и рисках, вместо того, чтобы тратить время на автоматизацию повторяющихся проверок.
Короче говоря, в случае с агентным ИИ усилия смещаются от вопросов «как» к «что» и «почему» — работе мышления с более высокой ценностью. На простой модели этот сдвиг выглядит примерно так:
Ниже приведены некоторые из моих наблюдений о самых важных «что» и «почему», которые я наблюдаю в этом сдвиге, и почему я воодушевлен и искренне оптимистичен по этому поводу.
ИИ снижает затраты на автоматизацию тестирования
Становится все проще автоматизировать механическую часть тестирования — будь то автоматизация повторяющихся ручных проверок, создание тестовых данных или поиск закономерностей в результатах тестов. И это тот аспект, который мне больше всего нравится в тестировании ИИ. Не потому, что средства автоматизации дешевеют, а потому, что происходит нечто более важное:у тестировщиков наконец-то появляется время и пространство для размышлений.
Они могут сделать шаг назад, взглянуть на систему в целом и потратить свою когнитивную энергию на то, что действительно важно:на поиск важных проблем в программном обеспечении.
Масштабируемая автоматизация раскрывает ценность квалифицированного тестирования
ИИ не просто снижает затраты на автоматизацию. Оно раскрывает реальную ценность профессионального тестирования на людях:тестирования, которое постоянно выявляет редкие, скрытые и тонкие проблемы, которые имеют значение. И поскольку ИИ автоматизирует все больше повторяющихся и утомительных работ, тестировщики отходят от вопроса «Как нам это автоматизировать?». до «Какие риски наиболее важны для каких заинтересованных сторон?».
Узким местом является не автоматизация, а мышление
И этот сдвиг – это перераспределение внимания – здоров, потому что узким местом никогда не была автоматизация, как считает он. Что ограничивает скорость, с которой мы можем стабильно выпускать высококачественное программное обеспечение, так это время, необходимое для глубокого изучения, экспериментирования и исследования. Именно это выявляет важные риски.
Команды редко терпят неудачу, потому что они не могут написать достаточно автоматизации. Они терпят неудачу, потому что не задают (или не могут) правильные вопросы достаточно быстро.
- <ли>
Понимаем ли мы систему?
<ли>Понимаем ли мы пользователей?
<ли>Понимаем ли мы, какие риски наиболее важны для каких заинтересованных сторон?
Если мы не зададимся этими вопросами, никакая автоматизация нас не спасет.
Тестирование — это исследование, а не производственная линия
Тестирование — это не заводской процесс. Это исследование качества, рисков и информации, которой у нас еще нет. Задача тестирования состоит в том, чтобы сформулировать риски, спланировать эксперименты, подвергнуть сомнению предположения и рассказать полезную историю о качестве программного обеспечения, которое мы тестируем.
И все это мы делаем с одной целью:дать возможность другим людям (например, разработчикам и менеджерам) быстрее принимать более обоснованные решения (будь то исправление чего-либо или доставка). Это суть тестирования. ИИ поддерживает его, но не заменяет.
ИИ — это усилитель, а не замена
Вот почему я рассматриваю ИИ как усилитель возможностей, а не как замену тестировщикам программного обеспечения. Он может предлагать соответствующие тесты, проектировать автоматизацию, генерировать данные и суммировать журналы. ИИ производит полезные артефакты и идеи, но люди выносят суждения.
ИИ поднимает потолок возможностей тестировщиков; это не устраняет необходимость человеческого осмысления. Опять же, ИИ — усилитель всего; это увеличивает изобретательность... но также и риски. Когда ИИ становится более автономным, становится легче принять активность за понимание. Если мы хотим получить максимальную отдачу от этой технологии, нам также необходимо понять условия, при которых она может ввести нас в заблуждение. Не для осторожности, а для того, чтобы помочь нам направить ИИ в правильном направлении.
Когда количество маскируется под уверенность
Один из первых способов, с помощью которых ИИ может ввести нас в заблуждение, — это создание иллюзии тестового покрытия. Когда идеи для тестирования становится легко генерировать, возникает соблазн приравнять объем теста к его качеству. Но профессионалы знают, что гора проверок, сгенерированных искусственным интеллектом, все равно может не заметить реальный риск:цифры покрытия могут выглядеть впечатляюще, информационные панели могут светиться зеленым, но критические вопросы могут оставаться без ответа.
Конечно, мы можем обосновать ИИ в нашем контексте. Но большая часть наших знаний неявна — они находятся в головах людей, а не в документах. ИИ не может волшебным образом получить к этому доступ. Итак, не позволяйте искусственному интеллекту диктовать вам условия тестирования. Относитесь к каждой идее теста, созданной ИИ, как к подсказке для запроса:«Что здесь упущено? Что это предполагает? Что здесь не известно?». Работа тестировщика - руководство, а не послушание.
Более быстрая автоматизация может оказаться неправильной
Масштабируемая автоматизация поощряет автоматизацию всего, включая вещи, которые не имеют значения. Профессиональные тестировщики это хорошо знают. Как говорит Дороти Грэм:«Если вы автоматизируете хаос, все, что вы получите, — это более быстрый хаос». Профессиональные тестировщики не создают автоматические проверки ради себя. Они не измеряют ценность по объему. Они знают, что небольшой набор проверок, выявляющих риск, гораздо более ценен, чем большой набор автоматических проверок, которые мало или вообще ничего не говорят о реальном риске. Они спрашивают:«Какую информацию нам дает эта проверка?» или «Говорит ли это нам что-то значимое о риске?». Они сосредоточены на автоматизации того, что важно, а не только того, что просто.
Скрытый риск:ИИ может лишить тестировщиков ПО
Еще одна тонкая ловушка — это тихое размывание навыков. Профессиональные тестировщики понимают, что ИИ может лишить их квалификации, если они перестанут практиковаться в самой сложной части. Они знают, что если они в основном побуждают ИИ выдавать идеи для испытаний, они могут не нарастить мускулы для моделирования незнакомых систем, распознавания двусмысленности и предвзятости в требованиях или разработки экспериментов в условиях неопределенности.
А когда эти мышцы ослабевают, исчезает и способность оценивать предложения ИИ. Суть в том, что ИИ освобождает профессиональных тестировщиков для более ценной работы, а также может ввести в заблуждение тестировщиков-любителей — менее опытных тестировщиков или тех, кто тестирует на других должностях (включая меня), — заставляя слишком буквально доверять результатам ИИ. Без надежных навыков тестирования легко принять беглые предложения за разумные.
В целом, ИИ усиливает возможности тестировщиков. Это умножает сильные стороны и пробелы. Смешанные команды тестировщиков-профессионалов и любителей, которые признают эту асимметрию, будут процветать.
Выбор:лучшее мышление или пустые ритуалы?
Это подводит нас к решениям, которые должны принять группы тестирования. ИИ создает новую точку выбора:используем ли мы освободившееся время, чтобы инвестировать в лучшее мышление (более четкое моделирование, более четкие вопросы, лучший анализ рисков) или мы тратим его на большее количество ритуалов?
Под ритуалом я подразумеваю занятую работу, замаскированную под тестирование:создание множества автоматических проверок, потому что это легко, строгое следование планам тестирования, созданным ИИ, даже при появлении новых рисков, или заполнение информационных панелей показателями, которые не отражают реальное качество. От этого выбора зависит будущее тестирования.
Замыкаем цикл:что вселяет во меня оптимизм
Итак, позвольте мне вернуться к тому, с чего я начал:ИИ меняет тестирование, не заменяя тестировщиков, а раскрывая, чем они занимаются. И когда я смотрю на команды, с которыми работаю, я вижу нечто обнадеживающее:несколько лет назад на наших совещаниях по уточнению бэклога я видел, что первым вопросом тестировщиков всегда было:«Как нам это автоматизировать?» вместо «Что нам следует тестировать и почему?».
Но сейчас я замечаю нечто иное. Поскольку автоматизировать стало проще, разговор изменился. Все больше тестировщиков задают вопросы «что и почему», потому что у них есть для этого передышка.
Больше разговоров идет о рисках, а не о сценариях. Больше энергии уходит на осмысление работы, чем на проверку. Все больше тестировщиков предпочитают более глубокое мышление пустым ритуалам.
Да, у ИИ есть свои риски (иллюзия охвата, неправильная автоматизация, деквалификация). Но я вижу, что тестировщики программного обеспечения отвечают вдумчиво. Они используют ИИ для углубления своих суждений, а не для того, чтобы избежать их.
Чистый эффект? Тестирование становится лучше не потому, что искусственный интеллект обладает волшебством, а потому, что он освобождает тестировщиков для выполнения большего количества важной работы:работы, которая не просто обеспечивает большую автоматизацию, но и раскрывает больше правды о качестве нашего программного обеспечения; работа, которая не просто идет быстрее, но и глубже.
И это вселяет во меня оптимизм относительно будущего нашего ремесла.
Система управления автоматикой
- Gartner выпускает первый в истории Magic Quadrant для программного обеспечения RPA
- BMC Software ускоряет переход к облаку, продвигая свое автономное цифровое предприятие
- Четыре ключевых критерия спецификации промышленного привода
- Plex запускает новую систему управления качеством для производителей
- Масштабируйте свою программу автоматизации с помощью этой 7-компонентной платформы
- Blue Yonder:выполнение цепочки поставок и управление рисками
- Arch Systems сотрудничает с Flex для преобразования производственных данных
- Надежное приложение и проверка безопасности данных в эпоху хакерства
- Автоматизация коммуникаций:обучение роботов говорить на человеческом языке
- Роботы контролируют тенденции инноваций в производстве на выставке MACH 2014