Кодирование с помощью ИИ имеет тенденцию сочетать небольшие улучшения с тихим регрессом. Сгенерированный рефакторинг может переименовать функцию, изменить тип возвращаемого значения или жестко запрограммировать предположение, которое нарушается только в случае границы часового пояса, который никто не думал перезапускать. ...
Кодирование с помощью ИИ имеет тенденцию сочетать небольшие улучшения с тихим регрессом. Сгенерированный рефакторинг может переименовать функцию, изменить тип возвращаемого значения или жестко запрограммировать предположение, которое нарушается только в случае границы часового пояса, который никто не думал перезапускать. Проблема не в коде написания модели; дело в том, что полный пакет CI часто запускается после того, как изменение уже находится в запросе на включение, и проверяющему остается смотреть на разницу, а не на сигнал регрессии.
Более дешевый способ — запускать в чистой среде только те тесты, на которые влияет разница, на основе набора случаев регрессии, которые вы собрали из предыдущих ошибок. Это ворота перед слиянием, а не замена полного набора. Полный набор может работать медленно; шлюз просто должен работать достаточно быстро, чтобы обнаружить очевидные сбои до того, как начнется проверка человеком.
В приведенном ниже рабочем процессе предполагается наличие двух заявок на доступность из бесплатного уровня MonkeyCode: бесплатный доступ к модели для сортировки сбоев и бесплатный сервер для одноразового бегуна. Раскрытие информации: эта статья была подготовлена в рамках информационно-пропагандистской программы MonkeyCode. Эти утверждения касаются доступности на уровне аккаунта, а не контрольных показателей; Я не предполагаю конкретных названий моделей, квот, аппаратного обеспечения или продолжительности.
Полезное