不会被完全取代,但职业内容会被重塑。
AI能帮我们做什么它做不了的以及它永远替代不了什么。
一、AI已经在改变测试的劳动密集型部分
1. 测试用例生成
以前:照着需求文档一个个脑补场景。
现在:把需求文档或接口定义丢给 AI,它能自动生成包括正常流程、边界值、异常情况的用例草稿,测试员只需挑选和补充。
2. 测试数据准备
以前:手动构造各种脏数据、边界数据、符合格式的假数据。
现在:AI 可以批量生成符合约束规则的假数据,甚至模拟真实用户行为产生的数据分布。
3. 自动化脚本编写
以前:手写 Selenium、Appium 脚本,处理等待、定位、断言等一堆细节。
现在:描述打开登录页,输入错误密码三次,证实账户是不是锁定,AI 能直接生成对应脚本,定位方法和异常处理也一并给出。
4. 视觉回归和异常检测
AI可以自动扫描页面,发现像素偏移、元素遮挡、文字截断等肉眼容易忽略的问题,不再只依赖断言。
5. 失败归因和日志分析
几十万行日志或失败的测试截图,AI可以快速挑选报错信息,给出可能的根本原因方向,而不是让人一行行翻。
二、AI有越不过的三道坎
1. 没有业务感不知道什么才是对的
AI 可以猜出“登录失败了”,但判断不出当用户从购物车返回后,商品折扣应该继续保留,但产品经理其实想让它刷新-这种隐含的业务规则,只有懂业务的测试人员才能捕捉和确定。测试的本质是发现预期和实际的偏差,而预期藏在产品经理的脑子、运营会议的结果、用户投诉的上下文里,AI看不到这些。
2. 没有用户同理心
一个按钮位置不对,AI 可能只从UI规范角度判断是不是越界,但真实用户会因为按不到而放弃支付。好用和符合规格是两回事,探索性测试中那种总感觉这里操作别扭的直觉,AI没有。
3. 无法承担质量责任
当项目快上线时,发现一个极小概率触发的数据丢失缺陷但修复成本很高,是发还是修?这种质量风险考虑和交付决定,需要有人站出来权衡和承担责任,AI 只能提供数据参考,不能拍板。
三、最可能的结果
操作方面对测试脚本的堆砌会越来越少,但以下工作会变得更加稀缺重要:
质量架构设计:决定哪些测、怎么测、测到什么程度,设计整体测试方法和可测试性架构。
业务模型和需求分析:深入理解业务链路,找出需求本身的不合理和遗漏,从源头防止缺陷。
复杂场景的探索性测试:在AI划定的大范围包括之后,进行手工思维。
AI 测试结果的考虑和调优:审查AI生成的用例是不是有效,修正它的偏见,不断用业务知识来喂养和检查它。
非功能质量的把控:安全性、可维护性、数据合规性等更高方面的质量属性,仍需人类判断。