面包屑图标 当前位置: 首页
AI资讯
热点详情

字节最新开源AI自动生成UI测试脚本

AI热点日报
AI热点日报时间:2026-06-28
热点解读

UI自动化测试从脚本开发到后期维护,往往让整个团队倍感压力。选择器繁多、代码冗长,随着业务内容增加和时间推移,维护成本急剧上升,想要调整任何细节都需要反复翻查。有没有一种方法,能让测试脚本的编写像与人对话一样自然简单? 答案是肯定的。字节跳动Web Infra团队开源了一款创新的UI自动化测试工具—

UI自动化测试从脚本开发到后期维护,往往让整个团队倍感压力。选择器繁多、代码冗长,随着业务内容增加和时间推移,维护成本急剧上升,想要调整任何细节都需要反复翻查。有没有一种方法,能让测试脚本的编写像与人对话一样自然简单? 答案是肯定的。字节跳动Web Infra团队开源了一款创新的UI自动化测试工具——Midscene.js[1]。其核心理念非常直接:借助大语言模型(LLM)的能力,你只需描述交互步骤和期望的数据格式,Midscene.js就能自动完成剩余工作。 Midscene.js提供了Ja vaScript版本的SDK,让你可以用自然语言控制页面、执行断言,还能以JSON格式提取数据。目前该项目在GitHub上已获得669个Star,发展势头良好。

Midscene.js 核心API

Midscene.js已发布到NPM,Ja vaScript开发者可直接通过代码快速接入使用。
核心API数量极少,简洁得令人舒适:
  • .aiAction(steps: string):描述你要执行的一系列操作步骤。例如:.aiAction("搜索栏输入 '今天天气怎么样',点击搜索按钮")。一步到位,无需编写复杂选择器。
  • .ai():是.aiAction的简写,进一步减少输入量。
  • .aiQuery(dataShape: any):从页面提取指定数据。例如:.aiQuery('左上角展示的日期和时间,string')。无需编写繁琐的DOM遍历,用自然语言即可搞定。
  • .aiAssert(assertion: string, errorMsg?: string):断言功能,用于判断当前页面状态是否符合预期。

Chrome插件快速体验

Midscene.js还提供了一款Chrome插件,目的是让用户在不写代码的情况下,直接在任意网站上体验其核心能力。 在Chrome应用商店搜索“Midscene.js”[2]即可找到并安装。
安装完成后,打开任意目标网站并启动插件。第一步需要配置OpenAI API Key,然后在输入框中描述你希望执行的步骤,剩下的全部交给AI处理。

与Puppeteer集成

Puppeteer[3]是前端开发者非常熟悉的浏览器自动化库,通过DevTools协议或WebDriver BiDi控制Chrome或Firefox。Midscene.js提供了PuppeteerAgent,可与Puppeteer无缝结合。 配置API Key
OPENAI_API_KEY="替换为自己的Open API Key"
安装依赖
npm install @midscene/web puppeteer ts-node --sa ve-dev
示例 下面是一个来自Midscene.js官方[4]的集成示例,看完你就能感受到这款工具的便捷之处:
import puppeteer from "puppeteer";
import { PuppeteerAgent } from "@midscene/web/puppeteer";

const sleep = (ms: number) => new Promise((r) => setTimeout(r, ms));
Promise.resolve(
(async () => {
const browser = await puppeteer.launch({
headless: false, // 这里用有头模式方便调试
});

const page = await browser.newPage();
await page.setViewport({
width: 1280,
height: 800,
deviceScaleFactor: 1,
});

await page.goto("https://www.ebay.com");
await sleep(5000);

// ? 初始化 Midscene agent
const mid = new PuppeteerAgent(page);

// ? 执行搜索
// 注:尽管这是一个英文页面,你也可以用中文指令控制它
await mid.aiAction('在搜索框输入 "Headphones" ,敲回车');
await sleep(5000);

// ? 理解页面,提取数据
const items = await mid.aiQuery(
'{itemTitle: string, price: Number}[], 找到列表里的商品标题和价格',
);
console.log("耳机商品信息", items);

// ? 用 AI 断言
await mid.aiAssert("界面左侧有类目筛选功能");

await browser.close();
})()
);
看到这里,你是否觉得编写测试用例从未如此轻松?只需用自然语言描述操作和预期结果,剩下的交给大模型去理解页面、定位元素、执行动作。维护成本也直线下降——页面结构变了?AI会主动适应,你只需要更新自然语言描述即可。
这款工具值得一试,尤其适合那些仍在为大量选择器和断言代码烦恼的团队。
热点追踪提示词
你是一名 AI 行业编辑,请围绕下面这条热点输出一份资讯解读:
热点:字节最新开源AI自动生成UI测试脚本要求:
1. 先用一句话解释这条热点在讲什么
2. 再总结它为什么重要
3. 说明会影响哪些 AI 产品或内容方向
4. 最后给出 3 个适合资讯站使用的标题
来源:https://www.53ai.com/news/OpenSourceLLM/2024121816054.html
ai 人工智能

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关热点
AI热点2026-07-09 21:03
VSona推出AI伴侣开发新方案

VSona是一个开发AI伴侣的平台,提供聊天、角色扮演、创意表达等功能。用户可自定义头像和声线,支持文字或语音互动。AI伴侣具备动画反馈和语音响应,营造安全、沉浸的个性化互动空间。

AI热点2026-07-09 21:03
AI音频母带处理工具Mastermallow

MastermallowAI音频母带处理适用于音乐、播客及内容创作者。可将原始录音一键转为专业音频,提升播客音质,为音乐作品添加母带效果。特色包括智能音频分析与增强、原音与母带实时对比、高质量成品下载。

AI热点2026-07-09 21:03
MyCharacter.ai:创建收藏互动AI角色的dApp

MyCharacter AI是基于Polygon链的去中心化应用,通过CharacterGPTV2多模态AI系统生成具有独特形象和性格的AI角色。用户可与角色实时互动,并将其作为NFT收藏、交易或转让,实现AI角色生成、互动与资产化的一体化。

AI热点2026-07-09 21:03
ToMate AI自动回复客户消息

ToMate基于AI智能高效处理客户消息,适用于客服、销售及市场营销等场景。它能及时贴心回复,支持解析多种文件格式,并采用灵活定价方案,显著提升工作效率与客户满意度。

延伸阅读