网易首页 > 网易号 > 正文 申请入驻

AI改代码你敢放手吗?三道护栏让自愈Agent只改该改的

0
分享至

让AI自动修改测试代码,听起来很美好,但如果没有刹车机制,这辆车迟早要撞墙。Playwright自愈测试Agent的实践者最近分享了一套方案:与其赌AI每次都能改对,不如用三道硬性护栏,把它的权限锁死在"只换定位器"这个范围内。

这个思路的起点很直接——自愈的本质是"让AI改你的代码",而AI改代码这件事,没有刹车的自愈就是灾难。恶意代码执行、误改业务断言、带崩其他用例,这些风险不是假设,而是真实会发生的场景。作者给出的解法不是祈祷AI更聪明,而是从工程层面把风险路径一条条堵死。


第一道护栏:用AST白名单替代永远堵不完的黑名单

传统思路是维护一个危险代码黑名单,但AI生成代码的方式决定了黑名单永远追不上它的花样。作者改用Python的ast模块,把代码解析成语法树,然后只允许特定的语法节点和名称通过。白名单是反过来的思路:不在名单里的语法节点,一律拒绝。这样从语法层面就拦截了不安全代码,而不是事后去识别它。

这套机制的关键在于"默认拒绝"——AI生成的代码必须逐项匹配白名单里的节点类型,任何不在名单里的结构直接打回。相比黑名单的被动防御,白名单把安全边界画在了最前面。

第二道护栏:改动范围校验,只换定位器不碰业务逻辑

AI最容易犯的错不是改错,而是改太多。作者通过对比改动前后的文件,强制要求改动行必须符合定位器特征,同时明确排除assert、def、import这类业务逻辑关键词。行数不变、改动次数受限,这些约束叠加在一起,确保AI只能在"换定位器"这个动作上做文章,碰不到用例结构和业务断言。

这道护栏的本质是给AI画了一个极小的操作窗口。它不需要理解整个测试用例的业务含义,只需要在指定范围内完成替换动作。范围越小,出错的可能性就越低。

第三道护栏:沙箱验证、回归测试与自动回滚闭环

新定位器通过沙箱验证只是第一步,还得跑关联用例做回归测试。如果回归失败,系统通过git自动回滚到改动前的状态;如果改动过多,则转入人工审核流程。"验证→回归→回滚"这条闭环,就是"自愈"和"瞎改"的分界线。

这套闭环把AI的每一次改动都置于可撤销的保障之下。即使AI真的改出了问题,系统也能在几秒内恢复到安全状态,不会让坏代码留在测试套件里持续造成影响。

踩过的三个坑:护栏本身也需要调试

作者在编写护栏的过程中也踩了三个实际坑点。这些坑主要集中在白名单覆盖不全、范围校验误伤正常改动、以及回滚逻辑在特定场景下失效等问题上。这些细节提醒我们,护栏不是写一次就完事的,它需要在实际使用中不断调整和补全。

这套方案的价值在于,它把"AI改代码"这件事从"信任问题"变成了"工程问题"。不需要AI变得绝对可靠,只需要在它出错时,系统能及时发现并恢复。对于正在尝试让AI参与测试维护的团队来说,这三道护栏提供了一个可落地的参考框架。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
吴兴涵:说实话,进球其实是蒙的;我们得对得起这件球衣

吴兴涵:说实话,进球其实是蒙的;我们得对得起这件球衣

懂球帝
2026-09-02 21:58:23
“没有手艺都是科技”,青岛一烤羊店招牌被六旬师傅装反,店主:主打纯手艺无科技,视频太火了,正在犹豫要不要改过来

“没有手艺都是科技”,青岛一烤羊店招牌被六旬师傅装反,店主:主打纯手艺无科技,视频太火了,正在犹豫要不要改过来

扬子晚报
2026-09-01 12:22:59
“眼神都拉丝了!”家长晒母子互动视频,引全网不适:儿大不避母的结果

“眼神都拉丝了!”家长晒母子互动视频,引全网不适:儿大不避母的结果

妍妍教育日记
2026-08-31 23:54:51
女人最好的状态,从来不止年轻貌美

女人最好的状态,从来不止年轻貌美

娱你同欢
2026-09-02 19:57:31
景甜风波后现身机场,穿露脐短T打扮十分精致,神态略显拘谨

景甜风波后现身机场,穿露脐短T打扮十分精致,神态略显拘谨

吃青菜长高
2026-08-31 13:06:01
A股:下跌到3941,尾盘迹象很明显,明天周四,可能重演熟悉行情

A股:下跌到3941,尾盘迹象很明显,明天周四,可能重演熟悉行情

虎哥闲聊
2026-09-02 15:04:43
胡锡进对孙宇晨《致胡锡进老师》的回复

胡锡进对孙宇晨《致胡锡进老师》的回复

DoNews
2026-09-01 23:16:59
首发中锋要4000万,替补560万却先被保障:活塞这操作看不懂

首发中锋要4000万,替补560万却先被保障:活塞这操作看不懂

晚风知我意21
2026-09-02 23:14:10
王晶爆张国荣跳楼内幕!抑郁症只是一方面,受内地金主影响最大

王晶爆张国荣跳楼内幕!抑郁症只是一方面,受内地金主影响最大

可乐谈情感
2026-08-30 07:27:10
极限利用!比永兴岛小一半的马累岛住了24万人!南海能效仿吗?

极限利用!比永兴岛小一半的马累岛住了24万人!南海能效仿吗?

兴趣知识
2026-09-01 19:43:43
华为,谁允许你这么折叠的

华为,谁允许你这么折叠的

机智猫
2026-08-31 16:40:11
许家印大概怎么也没料到,自己刚被判刑才四天,王健林就凭一系列举措让口碑迅速逆势翻红

许家印大概怎么也没料到,自己刚被判刑才四天,王健林就凭一系列举措让口碑迅速逆势翻红

人生录
2026-08-30 00:05:13
江西24岁女子患病,未婚夫垫付30万治疗费!办完后事准备离开,未来岳父递来一个红袋子:定情物+12万彩礼,一句话让他当场泪崩

江西24岁女子患病,未婚夫垫付30万治疗费!办完后事准备离开,未来岳父递来一个红袋子:定情物+12万彩礼,一句话让他当场泪崩

背包旅行
2026-09-02 18:16:44
1.4亿买来坐板凳!三场57分钟,皇马最贵替补,穆帅心里有数

1.4亿买来坐板凳!三场57分钟,皇马最贵替补,穆帅心里有数

林子说事
2026-09-02 01:35:18
为何逝去的亲人不托梦给我们?城隍爷:不是不愿来,而是魂归各处

为何逝去的亲人不托梦给我们?城隍爷:不是不愿来,而是魂归各处

阿郑的读书日常
2025-02-07 08:50:46
孙宇晨向胡锡进开炮了

孙宇晨向胡锡进开炮了

凤眼论
2026-09-01 17:51:39
尼泊尔“楼坚强”走红网络!网友:这个打叉三角结构非常重要,坚固原因就在于此,建议新的海关边检大楼也要这样设计

尼泊尔“楼坚强”走红网络!网友:这个打叉三角结构非常重要,坚固原因就在于此,建议新的海关边检大楼也要这样设计

火山詩话
2026-09-01 16:33:31
北京29岁女子欲捐骨髓救母发现非亲生,替母寻找亲生骨肉,接生医院:已组织工作专班

北京29岁女子欲捐骨髓救母发现非亲生,替母寻找亲生骨肉,接生医院:已组织工作专班

潇湘晨报
2026-09-02 21:23:33
胡锡进哪来的脸批孙宇晨?

胡锡进哪来的脸批孙宇晨?

郁风手记
2026-09-02 20:33:13
三款英特尔MacBook被苹果列入过时名单,官方维修正式终止

三款英特尔MacBook被苹果列入过时名单,官方维修正式终止

算力游侠
2026-09-01 12:04:32
2026-09-03 00:00:49
字节漫游指南
字节漫游指南
有态度网友ytd
207文章数 111关注度
往期回顾 全部

科技要闻

凌晨最强模型上新,Claude Fable 5.1发布

头条要闻

乌安全局与乌国防部情报总局在基辅交火 泽连斯基发声

头条要闻

乌安全局与乌国防部情报总局在基辅交火 泽连斯基发声

体育要闻

一次有奖问答,让他成为欧冠主帅

娱乐要闻

香港武打影星陈观泰离世,终年80岁

财经要闻

北京首钢园数采中心停运,“百万小时”产能目标的账还算得过来吗?

汽车要闻

配双腔空悬+机械差速锁 传祺越7预售权益价17.18万起

态度原创

本地
时尚
家居
健康
公开课

本地新闻

昆明的雨,解锁汪曾祺的浪漫雨季

白衬衫不火了?早秋穿“棕色衬衫”更高级好看

家居要闻

2026建博会(广州) 公装联探展交流活动

越吃越爆痘?医生讲清7大真相

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版