功能介绍
评论列表

详情介绍

Midscene.js是一个彻底简化UI自动化测试流程的开源工具。它由web-infra-dev团队开发,核心思想是用AI来弥合人类意图与机器执行之间的鸿沟。在传统的UI自动化中,你需要编写精确的代码来定位每一个元素,处理各种异步加载和动态变化。而Midscene.js允许你像对人说话一样,描述你想要执行的操作和想要验证的结果。它通过集成多模态大语言模型,能够“看懂”用户界面,理解你的指令,并自动规划出具体的操作路径。无论是Web应用、移动App还是桌面软件,Midscene.js都提供了一套统一的API和工具链,极大地降低了自动化脚本的编写和维护成本,使得非技术背景的产品经理或设计师也能参与到自动化验证工作中。

官网入口地址

Midscene.js拥有详尽的中文官方网站,提供快速体验、文档和博客等内容。

下载地址

Midscene.js是一个Node.js库,您可以通过npm或yarn等包管理器将添加到您的项目中。具体的安装命令在官网的“快速开始”或GitHub的README中有详细说明。

  • npm安装命令示例(具体请参考官方文档):npm install --save-dev @midscene/web

功能介绍

Midscene.js的功能围绕“AI驱动”和“开发者体验”两个核心设计,具体包括:

  • 自然语言交互:这是Midscene.js最核心的功能。您可以使用日常语言来描述UI操作,“在搜索框输入‘AI自动化’并点击搜索按钮”。SDK内部的AI Agent会理解意图,分析当前界面的DOM结构和视觉信息,然后自动执行对应的操作。您甚至可以要求以特定格式(如JSON)返回数据,比如“提取页面上所有商品的价格和名称,以JSON数组格式返回”。

  • 多模态大语言模型支持:为了理解界面,Midscene.js需要多模态能力的支持。它设计为可插拔的AI后端,既可以接入GPT-4等强大的公有云多模态模型,也可以连接UI-TARS等开源可私有化部署的模型。这赋予了用户根据成本、隐私需求和效果来选择底层AI能力的灵活性。

  • 直观断言:验证测试结果是自动化中的关键步骤。Midscene.js允许您直接用自然语言来表达断言,断言“页面上应该显示‘登录成功’的提示信息”。AI会理解这个预期并去界面中验证,无需编写复杂的条件判断代码。

  • 可视化报告与调试工具:为了提升调试效率,Midscene.js提供了详尽的可视化报告。报告会以时间线或步骤列表的形式,清晰地展示每个AI指令是如何被理解和执行的,附带了执行前后的界面截图或关键信息。内置的Playground功能允许您在不重新运行整个测试脚本的情况下,单独调整和试运行某条自然语言指令,极大地加速了脚本的调试和优化过程。

  • 跨平台与高集成性:Midscene.js的愿景是支持全平台。它提供了统一的API,可以轻松集成到Puppeteer、Playwright等流行的Web自动化工具中,也支持通过YAML脚本定义流程。根据官网信息,能力正在向Android、iOS、HarmonyOS、Linux、macOS和Windows等平台扩展。

  • 开源与社区驱动:作为一个开源项目(在GitHub上已获得超过11k Stars),它鼓励社区贡献。用户可以自由地获取源码、提出需求、报告Bug,甚至参与到新功能的开发中。

应用场景

Midscene.js的应用场景覆盖了软件开发和测试的多个环节:

  • 端到端自动化测试:编写更贴近业务逻辑、更健壮的UI测试用例。测试脚本不再依赖于易变的元素ID或XPath,而是基于功能描述,即使前端实现细节改变,测试用例往往也能继续工作。

  • 智能化数据抓取:从复杂或动态渲染的网页中提取结构化数据。只需用一句话描述你想要什么数据,Midscene.js就能处理各种反爬和异步加载,将结果返回给你。

  • 用户界面一致性检查:通过编写自然语言指令,可以自动在不同浏览器或设备上执行相同的操作流程,并利用断言验证界面布局和功能表现是否一致。

  • 自动化操作与脚本录制:非技术背景的运营或产品人员,可以通过Midscene.js的Chrome插件或Playground,像录制宏一样,用自然语言生成自动化脚本,用于重复性的工作,如批量上传、数据填报等。

补充必要信息

  • 开发团队:Midscene.js由web-infra-dev团队开发,这是一个专注于Web基础设施和开发者工具的开源团队。

  • 定价:Midscene.js本身是开源且免费的SDK。但请注意,AI能力的实现需要调用大语言模型。如果您选择使用GPT-4等公有云服务,您需要自行申请API密钥并支付相应的调用费用。如果您选择部署并使用开源模型(如UI-TARS),则只需承担您自己的硬件或云服务器成本。

  • 快速体验:官网提供了Chrome插件的下载,允许用户在不搭建完整项目环境的情况下,直接在浏览器中体验用自然语言驱动和调试网页操作,这对于快速了解和评估该工具非常有帮助。

  • 技术原理:核心流程为:自然语言解析 -> AI模型理解意图与界面 -> 生成并执行具体操作 -> 验证结果并生成可视化报告。

Midscene.js常见问题

本文标签