一、使用 YAML 格式的自动化脚本
在大多数情况下,开发者编写自动化脚本只是为了执行一些简单流程,比如检查某些内容是否出现,或者验证某个关键用户路径是否可用。此时维护一个大型测试项目会显得毫无必要。
Midscene 提供了一种基于 .yaml 文件的自动化测试方法,这有助于你专注于编写流程,而不是测试框架。
这里有一个示例,通过阅读它的内容,你应该已经理解了它的工作原理。
web:
url: https://www.bing.com
tasks:
- name: 搜索天气
flow:
- ai: 搜索 "今日天气"
- sleep: 3000
- name: 检查结果
flow:
- aiAssert: 结果中展示了天气信息
:::info 样例项目
你可以在这里找到使用 YAML 脚本做自动化的样例项目
:::
配置 AI 模型服务
将你的模型配置写入环境变量。更多信息请查看 选择 AI 模型。
# 替换为你的 API Key
export OPENAI_API_KEY="sk-abcdefghijklmnopqrstuvwxyz"
# 可能需要更多配置,如模型名称、接入点等,请参考 《选择 AI 模型》文档
export OPENAI_BASE_URL="..."
或使用当前命令运行目录下的 .env 文件存储配置,Midscene 命令行工具在运行 yaml 脚本时会自动加载它
OPENAI_API_KEY="sk-abcdefghijklmnopqrstuvwxyz"
使用命令行工具
全局安装 @midscene/cli
npm i -g @midscene/cli
# 或在项目中安装
npm i @midscene/cli --save-dev
编写一个名为 bing-search.yaml 的文件来驱动 web 浏览器的自动化任务
web:
url: https://www.bing.com
tasks:
- name: 搜索天气
flow:
- ai: 搜索 "今日天气"
- sleep: 3000
- aiAssert: 结果显示天气信息
或者驱动安卓设备的自动化任务(需要使用 adb 连接安卓设备)
android:
# launch: https://www.bing.com
deviceId: s4ey59
tasks:
- name: 搜索天气
flow:
- ai: 打开浏览器并导航到 bing.com
- ai: 搜索 "今日天气"
- sleep: 3000
- aiAssert: 结果显示天气信息
运行脚本
midscene ./bing-search.yaml
# 或者如果你在项目中安装了 midscene
npx midscene ./bing-search.yaml
你将会看到脚本的执行进度和可视化运行报告文件。
脚本文件结构
脚本文件使用 YAML 格式来描述自动化任务。它定义了要操作的目标(如网页或安卓应用)以及一系列要执行的步骤。
一个标准的 .yaml 脚本文件包含 web 或 android 部分配置环境,以及一个 tasks 部分来定义自动化任务。
web:
url: https://www.bing.com
# tasks 部分定义了要执行的一系列步骤
tasks:
- name: 搜索天气
flow:
- ai: 搜索 "今日天气"
- sleep: 3000
- aiAssert: 结果显示天气信息
web 部分
web:
# 访问的 URL,必填。如果提供了 `serve` 参数,则提供相对路径
url: <url>
# 在本地路径下启动一个静态服务,可选
serve: <root-directory>
# 浏览器 UA,可选
userAgent: <ua>
# 浏览器视口宽度,可选,默认 1280
viewportWidth: <width>
# 浏览器视口高度,可选,默认 960
viewportHeight: <height>
# 浏览器设备像素比,可选,默认 1
deviceS

最低0.47元/天 解锁文章
2004

被折叠的 条评论
为什么被折叠?



