零成本跑e2e测试:没有模型时哪些功能依然可用
零成本跑e2e测试没有模型时哪些功能依然可用【免费下载链接】e2eNext generation e2e testing framework for web and mobile apps.项目地址: https://gitcode.com/GitHub_Trending/e2e6/e2ee2e 是面向 Web 和移动端的下一代端到端e2e测试框架用自然语言描述目标让 agent 自动驱动应用完成任务。很多人以为 AI 测试必然要掏 API 费用——其实不必。本文带你盘点 e2e 中完全不消耗模型的三类能力定位器测试、API 接口测试和 agent 回放缓存让你在没有配置任何模型的情况下依然能跑起一整套零成本的 e2e 测试。 先搞懂e2e 的 AI 和确定性是两套可拆开的系统e2e 的卖点是用一句话驱动应用但官方在 docs/models.mdx 中明确写道不包含 agent 步骤的测试完全不需要模型。也就是说框架能力可以拆成两层能力是否需要模型说明定位器操作与断言screenexpect❌ 不需要精确、确定、零 TokenAPI 接口测试❌ 不需要与 UI 测试在同一运行中执行回放缓存重放 agent 步骤❌ 不需要录一次之后原样重放现场执行agent.act等新步骤✅ 需要未录制过的目标才调用模型下面逐一展开这些免费功能。 功能一定位器测试——零 Token 的确定性测试定位器Locators是 e2e 中最传统也最可靠的部分。当你明确知道要点哪个按钮、填哪个输入框时直接用screen.getByRole、screen.getByLabel、screen.getByTestId这类查询定位控件再执行tap、fill、swipe等操作最后用expect做轮询断言。官方文档 docs/locators.mdx 开篇即说明定位器步骤不调用任何模型。这意味着每次运行都不产生模型费用结果 100% 可预期断言自带轮询重试页面稍慢也能等不必手写 sleep支持语义化查询role/name 优先、按行范围筛选、甚至坐标级点击覆盖面足够日常业务。对于回归测试中那些流程固定、结果明确的用例定位器方案是性价比最高的选择。 功能二API 接口测试——与 UI 测试同跑同样免费e2e 不只是测界面。在 docs/api-testing.mdx 中官方展示了如何用fetch直接调用接口并断言响应一个只使用app参数的测试不会调用任何模型。这类测试的典型姿势是用app.baseUrl拼出接口地址fetch请求后断言状态码与响应头用expect(...).toMatchSchema(...)按 Zod、Valibot 等 Standard Schema 校验响应结构且返回带类型的值接口是异步写库时用expect.poll反复读取直到通过。更重要的是API 测试和 UI 测试写在同一个测试文件、同一个运行里共享启动应用、分配端口等基础设施。对新手而言这是一份非常友好的入门组合不碰模型就能体验完整的项目结构、fixtures 和断言体系。 功能三回放缓存——agent 步骤录一次之后永久免费这是 e2e 最聪明的设计。当某个agent.act步骤跑通、且后面的断言验证了结果时运行器会把这一步的操作录进回放缓存下次运行不再调用模型而是直接重放录好的动作。README 中的原话是next run replays them with no model calls until the app changes下一次运行不再调用模型直到应用发生变化。细节上完整说明见 docs/cache.mdx开始与结束双重校验重放前先确认处于相同页面重放后检查录制的结果新增/消失的控件、路由变化是否真实发生防止假通过应用变了会自动接管控件找不到或状态对不上时agent 从当前屏幕接管继续执行并在下一次运行重新录制CI 默认只读read-only模式下缓存只重放不写入保证流水线行为稳定--strict-cache让陈旧录制大声失败录好的步骤重放不了时直接报REPLAY_STALE且不发起任何模型调用——连失败都是免费的随时用npx e2e cache ls/stats/clear检查与管理缓存。换句话说模型只在第一次学习流程和界面变了需要重学时花钱中间成千上万次 CI 运行都是零模型调用。⚠️ 没有模型时agent 步骤会发生什么如果一个步骤确实需要现场执行而没有模型它会以MODEL_UNAVAILABLE未配置模型或MODEL_PROVIDER_FAILED密钥无效、限流等失败。但别担心缓存文档专门照顾了这种情况由于模型不可达而失败的运行不会删掉已验证的录制——之前跑通并验证过的步骤依然保留在缓存中。换句话说断网跑测试不会弄丢你已有的免费资产。如果你预算有限但不想放弃自然语言packages/decision/ 提供的决策模型Decision Model是另一条省钱路线用有界选择代替开放式 LLM详见 docs/decision-models.mdx。 快速上手5 分钟开始零成本 e2e 测试运行npx e2e init交互式选择引擎Web / 移动端与模型提供方自动生成配置文件和示例测试打开 examples/README.md 参考四个完整示例Vite、Next.js、Expo、SwiftUI每个都是可独立运行、测试全绿的独立项目特别注意每个示例包含 3 个定位器测试和 2 个 agent 测试没有模型密钥时 agent 测试会自动跳过定位器测试照常通过——这正是零成本使用的最佳示范。 小结零成本 e2e 测试的最优组合场景推荐方式模型消耗流程固定的回归用例定位器 expect断言零接口与数据结构校验API 测试 Schema 匹配零复杂交互流程的回归agent 步骤 回放缓存仅首次录制界面偶发变化--strict-cache严格模式零失败也不调用把确定性的活交给定位器和 API 测试把探索性的活交给 agent 并在之后享受免费重放——这就是 e2e 让端到端测试零成本运转的完整思路。【免费下载链接】e2eNext generation e2e testing framework for web and mobile apps.项目地址: https://gitcode.com/GitHub_Trending/e2e6/e2e创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

嵌入式FreeRTOS学习日记(2026.10.06)

嵌入式FreeRTOS学习日记(2026.10.06)

1-掌握了栈,堆和RAM的联系和区别:RAM划分两个区域栈和堆,栈和堆都存放在RAM中。堆(Heap)区域:malloc,calloc,realloc等手动申请RAM的空间(栈位自动管理(自动申…

2026/10/7 15:33:49 阅读更多 →
90DaysOfDevOps Day 68:Ansible Tags、变量、Inventory 与 MySQL 数据库服务器配置实战

90DaysOfDevOps Day 68:Ansible Tags、变量、Inventory 与 MySQL 数据库服务器配置实战

文档/教程 【免费下载链接】90DaysOfDevOps This repository started out as a learning in public project for myself and has now become a structured learning map for many in the community. We have 3 years under our belt covering all things DevOps, including Pri…

2026/10/7 15:33:48 阅读更多 →
Vue 3实战第七天:环境配置、动态路由、插槽与Spring Boot部署全攻略

Vue 3实战第七天:环境配置、动态路由、插槽与Spring Boot部署全攻略

如果你是从第1天一路跟过来的,Day7这天咱们可以聊点能直接换钱的东西了。前六天你大体知道了Vue组件怎么写、页面怎么搭,但真到了公司里,你会发现大家聊的早就不只是new Vue()那一套:环境怎么配、动态路由怎么加、插槽做复杂布局、…

2026/10/7 15:33:48 阅读更多 →

最新新闻

PDN阻抗优化与芯片供电仿真:Sigrity+ADS双工具实战指南

PDN阻抗优化与芯片供电仿真:Sigrity+ADS双工具实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 16:00:27 阅读更多 →
轮式编码器里程估计实战:从脉冲换算到差速模型与标定排坑

轮式编码器里程估计实战:从脉冲换算到差速模型与标定排坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 16:00:27 阅读更多 →
WinForm RichTextBox实战:打造轻量级生产级文本编辑器

WinForm RichTextBox实战:打造轻量级生产级文本编辑器

简介:本资源是一个基于C# WinForm框架开发的富文本编辑器完整实现项目,面向C#初学者与WinForm桌面应用开发者,解决基础文本格式化、排版与交互功能快速落地问题。项目采用Visual Studio 2022开发,封装了加粗、斜体、下划线、字体颜…

2026/10/7 16:00:27 阅读更多 →
PCB邮票孔怎么加:半孔、断孔、Gerber与四款EDA实操

PCB邮票孔怎么加:半孔、断孔、Gerber与四款EDA实操

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 16:00:27 阅读更多 →
基于Spark+Kafka+Hive的智能货运系统毕业设计实战:从.dat文件到实时分析

基于Spark+Kafka+Hive的智能货运系统毕业设计实战:从.dat文件到实时分析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 16:00:27 阅读更多 →
SAP IDOC实战:采购订单自动转销售订单的完整配置指南

SAP IDOC实战:采购订单自动转销售订单的完整配置指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 15:59:26 阅读更多 →

日新闻

ROS2机械臂仿真与运动控制:从URDF建模到Gazebo实战全解析

ROS2机械臂仿真与运动控制:从URDF建模到Gazebo实战全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:01:58 阅读更多 →
用浏览器直接改ESP32的WiFi密码:NVS键值配置工具设计与实现

用浏览器直接改ESP32的WiFi密码:NVS键值配置工具设计与实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:02:00 阅读更多 →
芯片封装缺陷检测:扫描声学显微镜(SAT)原理与实操指南

芯片封装缺陷检测:扫描声学显微镜(SAT)原理与实操指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 1:02:00 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 14:34:12 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 14:34:13 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 9:29:10 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 14:34:12 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 11:43:46 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 13:34:55 阅读更多 →