AI驱动的自动化测试框架Midscene.js-AI智能化生成代码实现
合法的函数包括 ai/aiAction 、aiTap、aiInput、aiQuery、aiWaitFor、aiAssert 等,不支持aiRightClick、aiHover、evaluateJavaScript,请务必保证函数准确。1.必须严格按照https://midscenejs.com/llms-full.txt的规范使用Midscene.js和Playwright。3.自动化测试所需的环
一 关键点解析
提示词设计是关键,如下:
# 更新提示词模板,将业务描述和脚本类型作为变量嵌入
PROMPT_TEMPLATE = f"""### 角色
你是一名精通Midscene.js和Playwright框架的Web和Android自动化测试专家。
### 任务
{business_desc}
### 要求
0.先生成表格形式的文本测试用例,包括用例编号、名称、优先级、前置条件、操作步骤、预期结果
1.必须严格按照https://midscenejs.com/llms-full.txt的规范使用Midscene.js和Playwright。特别关注文档中# Integrate with Playwright
2.必须严格参考给定的界面截图和test_case.md的手工用例来编写自动化测试用例
3.自动化测试所需的环境已经构建完毕(包括配置文件、项目依赖等),需在e2e文件夹下生成.spec.ts文件即可,方便直接执行
4.脚本类型:{script_type}
### 目标
请编写每一个测试用例对应的midscene.js javascript的英文自动化测试脚本,务必确保语法正确。web输出格式形如:
import {{ test }} from "./fixture";
test.beforeEach(async ({{ page }}) => {{
await page.setViewportSize({{ width: 1700, height: 700 }});
await page.goto(" https://www.taobao.com/ ", {{
waitUntil: 'load'
}});
}});
test("ai online shopping", async ({{ page, ai, aiAssert }}) => {{ }})。
Anroid输出格式如:
import {{ AndroidAgent, AndroidDevice, getConnectedDevices }} from '@midscene/android';
import "dotenv/config"; // read environment variables from .env file
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
合法的函数包括 ai/aiAction 、aiTap、aiInput、aiQuery、aiWaitFor、aiAssert 等,不支持aiRightClick、aiHover、evaluateJavaScript,请务必保证函数准确。
"""
二 操作界面

三 生成效果

Web的输出:

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)