Barret李靖
23-08-17 15:15 微博认证:阿里巴巴职员 科技博主 头条文章作者

Chrome 推出的 Record & Replay 的能力,利用它可以将操作者在 Chrome 的行为路径 Record 下来,然后使用 Replay 进行浏览器层面的回放,记录包括页面跳转、内容输入、点击、鼠标移动等等。

它的使用场景在于 UI Automation 测试,可以深度解耦质量和研发的工作,只需要在测试环节打开 Record 能力,就可以生成一个通过 JSON 来描述的用户操作路径文件,在业务后期发布时,再利用 Replay 进行回放,这个能力可以很大程度释放 QA 的生产力,避免上线前的重复性人工测试行为。录制 JSON 文件的工作甚至还可以交给研发或者产品来做,这个教学成本很低,也可以封装 Chrome 插件来实现,操作起来更便捷。

Chrome 自身可以根据每个 JSON 文件导出一个无头浏览器的自动化执行脚本,此外,Puppeteer 也推出了针对 Replay 的工具库,github.com/puppeteer/replay,它可以直接将 JSON 作为输入来执行。QA 要做的事情就是维护 JSON 文件,甚至可以在制定了简单的编码规范后,提前编写测试用例,让项目转换成 BDD 行为驱动开发,这很容易做到,例如要求研发在 DOM 上标注 data-testid 相关信息,也可以直接给研发代码提 PR 添加 ID 标注。

写前端单测的业务已经比较稀少了,更别说繁重的 UI 自动化测试,在快速迭代的复杂业务场景下,没有测试用例,只会让项目质量持续恶化,测试工作量日积月累,越来越多。看到一个趋势是,QA 为了保障项目质量,同时研发又不愿意编写单元测试的情况下,UI 自动化测试的需求变得更加旺盛,这个解决方案或许可以帮助到处于这种状态的项目。 #Web技术# http://t.cn/A60kqDnA

发布于 浙江