ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

e2e目标驱动测试写法对比:5种测试风格的选型指南

e2e目标驱动测试写法对比:5种测试风格的选型指南 e2e目标驱动测试写法对比5种测试风格的选型指南【免费下载链接】e2eNext generation e2e testing framework for web and mobile apps.项目地址: https://gitcode.com/GitHub_Trending/e2e6/e2ee2e 是一款面向 Web 与移动端的下一代 AI 端到端测试框架用一句自然语言“目标”驱动应用完成操作再用定位器和断言检查结果。本文对比5 种 e2e 测试写法——纯定位器、目标驱动、混合风格、语义断言、explore 探索——并给出新手可直接套用的选型指南。一图看懂 5 种测试风格怎么选风格核心工具是否调用模型适合场景1️⃣ 纯定位器screenexpect❌控件固定、回归频繁的核心链路2️⃣ 目标驱动agent.act✅流程长、界面易变的用户旅程3️⃣ 混合风格agent.actexpect✅可缓存回放生产环境主力写法4️⃣ 语义断言agent.assert/waitFor/extract✅校验“画面对不对”而非精确值5️⃣ 探索模式e2e explore命令✅还不写测试先让 AI 帮你摸底完整说明见官方文档目录 docs/每种风格都附了可直接打开的参考页面。风格一纯定位器写法screen expect这是最“传统”的确定性写法你知道点哪个按钮、填什么值就用语义化查询精确定位全程不经过模型执行快、成本为零、结果 100% 可复现。写法要点见 docs/locators.mdx优先getByRole、getByLabel最后才用 testId。仓库里有一个很典型的完整示例——apps/web-benchmark/tests/login-form.e2e.ts它用纯定位器覆盖了“邮箱格式错误、密码过短、账号不存在、正常登录登出”四个用例一行模型调用都没有。适合登录、下单、表单校验等控件结构稳定的核心流程以及 CI 上高频运行的回归套件。风格二agent.act 目标驱动写法把一整段操作步骤压缩成一句“目标”由 AI agent 自己规划并执行点击、输入、滑动目标达成才返回。await agent.act(complete checkout with the test card);官方指南 docs/goals.mdx 强调两个原则一次只给一个目标像口头说话一样写指令尽量使用屏幕上真实出现的文案。测试数据通过params传入密码要用Secret包装防止模型看到明文。适合多步骤用户旅程注册、支付、向导流程、以及 UI 迭代快、手写选择器维护成本高的模块。风格三混合风格目标驱动 精确断言⭐ 推荐生产中最常用的写法让 agent 负责“怎么走”让expect负责“算不算对”。模型只开车测试是否通过的判定权交给确定性断言。仓库里的 apps/web-benchmark/tests-agent/login-form.e2e.ts 是教科书级示例agent.act(log in with the given credentials)完成登录动作后紧跟expect精确校验“Logged in successfully”文案。这种写法还有一个隐藏福利——回放缓存被后续断言验证通过的 agent 步骤会被录制下次运行直接回放、不再调用模型界面变了 agent 再自动接管。机制细节见 docs/cache.mdx。适合绝大多数业务场景兼顾抗界面变更能力与判定稳定性。风格四语义断言写法assert / waitFor / extract当你要校验的是“语义”而不是精确值时用 agent 的三个判断工具全部文档见 docs/assertions.mdxagent.assert立刻判断当前画面是否满足某句话如“仪表盘显示了试用徽章”agent.waitFor轮询等待条件成立如导出完成、下载链接出现agent.extract按 Zod schema 从画面提取结构化数据再交给expect精确比对。如果画面信息不足以判断断言会报ASSERTION_INCONCLUSIVE而不是误判——这对新手排错非常友好。需要“看像素”图表、布局时加vision: true。适合仪表盘状态、文案含义、异步加载结果、需要从页面读取数据的场景。风格五explore 探索式测试不写测试文件还没有想好写什么测试给e2e explore命令一个目标agent 会自己规划步骤、驱动应用、把发现的问题按严重级别issue / warning写进.e2e/report.json例如“购物车总价不随数量更新”这类功能缺陷会直接让运行判定为 failed。用法和预算说明见 docs/explore.mdx。适合接手新模块、给线上功能“体检”、从探索发现中挑选值得固化为回归测试的流向。选型速查清单✅ 控件稳定、跑得勤 →风格一纯定位器零模型成本✅ 流程长、界面常变 →风格二agent.act单目标✅ 想上生产 →风格三agent 驱动 expect 判定自动享回放缓存✅ 校验的是“含义”而非精确值 →风格四assert / waitFor / extract✅ 还在调研阶段 →风格五explore 先摸底再挑重点写测试一个测试文件内自由混搭这 5 种风格是官方鼓励的目标顺序由你把控目标内部的路径交给模型。更多真实场景Shadow DOM 表单、无限滚动、悬浮菜单等可以参考 apps/web-benchmark/tests-agent/scenarios.e2e.ts完整文档入口在 docs/index.mdx。【免费下载链接】e2eNext generation e2e testing framework for web and mobile apps.项目地址: https://gitcode.com/GitHub_Trending/e2e6/e2e创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表