Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告

本文涉及的产品
图像搜索,任选一个服务类型 1个月
简介: Midscene.js 是一款基于 AI 技术的 UI 自动化测试框架,通过自然语言交互简化测试流程,支持动作执行、数据查询和页面断言,提供可视化报告,适用于多种应用场景。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

原文链接:https://mp.weixin.qq.com/s/yopfWNlAq66VnH3DNlT_Mw


🚀 快速阅读

  1. 功能:支持自然语言交互、数据查询、页面断言和可视化报告。
  2. 技术:基于自然语言处理和界面理解技术,执行浏览器自动化操作。
  3. 应用:适用于自动化测试、数据抓取、性能监控和界面一致性检查等场景。

正文(附运行示例)

Midscene.js 是什么

公众号: 蚝油菜花 - midscene

Midscene.js 是一款基于 AI 技术的自动化 SDK,旨在简化 UI 自动化测试流程。它通过大型语言模型(LLM)解析用户的自然语言指令,执行相应的操作,如输入文本、点击按钮等。Midscene.js 支持动作执行、数据查询和页面断言,并提供可视化报告,帮助用户轻松调试和优化测试流程。

Midscene.js 是一个开源项目,用户可以在自己的环境中运行,确保数据安全。它支持与 YAML 脚本、Puppeteer 和 Playwright 等工具集成,适用于多种自动化测试场景。

Midscene.js 的主要功能

  • 自然语言交互:用户可以通过自然语言描述交互步骤,Midscene.js 将自动执行相应的操作,如输入文本、点击按钮等。
  • 自定义数据查询:用户描述所需的 JSON 格式,Midscene.js 将从页面内容中提取相应的数据。
  • 直观推断:用户可以对页面状态进行断言,确保 UI 符合预期。
  • Chrome 扩展:支持用户在任何网页上使用自然语言执行动作、查询和断言,无需编写代码。
  • 代码项目集成:与 YAML 脚本、Puppeteer 和 Playwright 等工具集成,实现自动化测试。
  • 可视化报告:每次运行后提供可视化报告,包括动画回放和步骤详情,用户可以在测试环境中调整提示而无需重新运行脚本。

Midscene.js 的技术原理

  • 自然语言处理(NLP):接收用户的自然语言输入,基于 NLP 技术解析指令。
  • 界面理解:模型分析网页内容,理解用户描述的界面元素和动作。
  • 执行动作:根据理解的结果,模型将执行相应的浏览器自动化操作,如模拟用户输入、点击等。
  • 数据提取:模型根据用户的查询请求,从网页中提取特定格式的数据。
  • 断言验证:模型检查页面状态是否符合用户的断言条件。

如何运行 Midscene.js

Midscene.js 提供了多种集成方式,以下是使用 Puppeteer 进行自动化测试的示例代码:

const puppeteer = require('puppeteer');
const midscene = require('@midscene/web');

(async () => {
   
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('https://example.com');

  // 使用 Midscene.js 执行自然语言指令
  await midscene.execute(page, '输入用户名 "testuser"');
  await midscene.execute(page, '点击登录按钮');

  // 提取页面数据
  const data = await midscene.query(page, '提取用户信息为 JSON 格式');
  console.log(data);

  await browser.close();
})();

代码解释

  1. Puppeteer 启动浏览器:使用 Puppeteer 启动浏览器并打开目标网页。
  2. Midscene.js 执行指令:通过 midscene.execute 方法执行自然语言指令,如输入用户名和点击登录按钮。
  3. 数据提取:使用 midscene.query 方法从页面中提取用户信息,并以 JSON 格式返回。
  4. 关闭浏览器:测试完成后关闭浏览器。

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

相关文章
|
14天前
|
人工智能 自然语言处理 架构师
AI 自动化智能体训练营
本课程专为想提升效率、探索副业的职场人、创业者及内容创作者设计,零基础可学。4周系统掌握AI生成文案、PPT、图表,自动化运营与多平台分发,打造24小时赚钱智能体,实现降本增效与个人变现双赢。
|
16天前
|
人工智能 Ubuntu 前端开发
Dify部署全栈指南:AI从Ubuntu配置到HTTPS自动化的10倍秘籍
本文档介绍如何部署Dify后端服务及前端界面,涵盖系统环境要求、依赖安装、代码拉取、环境变量配置、服务启动、数据库管理及常见问题解决方案,适用于开发与生产环境部署。
249 1
数据采集 Web App开发 人工智能
101 0
|
22天前
|
人工智能 数据可视化 测试技术
AI 时代 API 自动化测试实战:Postman 断言的核心技巧与实战应用
AI 时代 API 自动化测试实战:Postman 断言的核心技巧与实战应用
265 11
|
25天前
|
人工智能 安全 Devops
AI 驱动的 DevOps:通过智能命令执行实现基础设施自动化
本文探讨了如何利用能够根据自然语言提示执行命令、管理基础设施和自动部署的 AI 技术,来革新 DevOps 流程。通过模型上下文协议(MCP),AI 助手不仅能回答问题,还能直接操作终端、编辑文件并管理开发环境,从而简化复杂的 DevOps 任务,提高效率并降低错误率。
160 3
|
2月前
|
人工智能 运维 安全
运维老哥的救星?AI 驱动的自动化配置管理新趋势
运维老哥的救星?AI 驱动的自动化配置管理新趋势
119 11
|
2月前
|
存储 人工智能 算法
AI测试平台实战:深入解析自动化评分和多模型对比评测
在AI技术迅猛发展的今天,测试工程师面临着如何高效评估大模型性能的全新挑战。本文将深入探讨AI测试平台中自动化评分与多模型对比评测的关键技术与实践方法,为测试工程师提供可落地的解决方案。
|
3月前
|
机器学习/深度学习 人工智能 运维
软件出问题总是靠人盯?AI告诉你:哥们,这事可以自动化!
软件出问题总是靠人盯?AI告诉你:哥们,这事可以自动化!
78 0
|
3月前
|
人工智能 前端开发 测试技术
如何让AI帮你做前端自动化测试?我们这样落地了
本文介绍了一个基于AI的UI自动化测试框架在专有云质量保障中的工程化实践。
1383 21
如何让AI帮你做前端自动化测试?我们这样落地了
|
16天前
|
运维 Linux 网络安全
自动化真能省钱?聊聊运维自动化如何帮企业优化IT成本
自动化真能省钱?聊聊运维自动化如何帮企业优化IT成本
46 4

热门文章

最新文章