Комментарии 4
Следующая статья будет "Как мы успешно внедрили ИИ в тестирование и написание авто тестов и теперь всей командой ищем работу"
Я последние 5 лет практически не пишу юнит-тесты на крудовую бизнес-логигку, в первую очередь из-за того что тонны тестов только замедляют рефакторинг и превращаются в копипаст: логика переносится в тесты (осмысленно или нет - не так важно), так как цель - зелёная галочка, а не корректность. С таким подходом начинают появляться и подрывать доверие к системы false-positive тесты; со временем начинаешь задаваться вопросом: а стоили ли 2000 зелёных галочек потраченного на них времени...
Если я правильно понял, что самого кода сервисов генератор тестов не видит, т.е он не может превратить баг имплементации в фичу, т.е шанс на false-positive уменьшается. Также не должно быть проблем с рефакторингом, так как тесты можно перегенерировать всегда.
Интересно, какие категории ошибок может такой подход находить и не приведёт ли это к тому, что разработчики будут тратить время на вставку ассертов вроде if arg < 0 throw no-way-exception
куда надо и не надо чтобы осчастливить генератор?
Другими словами, не добавит ли это разработчикам больше не самой полезной работы?
Условный генератор тестов не видит самого кода сервисов, только то, что видят QA-инженеры — это могут быть требования, swagger написания ну и естественно сами тесткейсы. Сам подход скорее не ищет что-то новое, а помогает ускорить работу по автоматизации текущего. На данный момент не стоит целиком полагаться на LLM и делать инструменты, которые вообще исключают человека из процесса. Тут нужен надзор. С точки зрения рефакторинга можно сказать, что становится проще, так стоимость что переделать тест или сделать новый одинаковая.
В принципе если передавать код, LLM может юнит тесты создавать базовые и не очень. Правда, зачастую надо руками подправлять некоторые вещи. Но работы в целом меньше становится, получается такой умный шаблон.
Как изменится подход неизвестно, люди могут быть непредсказуемы. Если технологию использовать осмысленно, то получим плюсы, если безрассудно, то увы добавит бесполезной работы. Короче говоря без человека никуда.
Проводил эксперименты с поиском xpath локаторов. Квантованная модель DeepSeek-Coder-V2-Lite-Instruct запущенная на локальной машине, не плохо ищет локаторы по описанию. Такое ощущение что поиск локаторов можно уже передавать ИИ, по крайней мере на простых UI тестах.
Тестирование с интеллектом: Пилотный проект внедрения ИИ в РСХБ-Интех