Install and update artemis-use with task diagnostics and plugin guidance. Preserve cross-device file receipts, review canonical reports, guard stage transitions and reduce small history summaries. Improve exploration lifecycle, request recovery and browser live connections.
5.8 KiB
批量任务与报告交付
直接提交用例
用户要求执行明确的测试集合时,将每个独立提示词转成一个 case。goal 是唯一发送给 ARTEMIS 的任务正文;case_id、category、subcategory、name、preconditions 只作元数据。task_config 可覆盖该项执行配置,不影响其他项。
先生成唯一 request_id(例如 UUID),保存在当前任务记录中,然后调用:
{
"action": "create",
"request_id": "52c3e95d-7e31-4e41-b42d-27aa3774fb2d",
"batch": {
"name": "系统设置冒烟测试",
"device_serial": "用户已选择的设备编号",
"profile": "pro",
"formats": ["docx", "xlsx"],
"stop_on_failure": false,
"timeout_seconds": 1800,
"repeat_count": 1,
"cases": [
{
"case_id": "DEMO-001",
"category": "系统设置",
"subcategory": "首页",
"name": "设置首页可达",
"preconditions": "设备已解锁。",
"goal": "打开系统设置,确认设置首页可见,不修改任何设置;记录实际文字与截图证据。",
"task_config": {
"profile": "pro",
"model": "mimo-v2.6-flash",
"reasoning_effort": "high",
"locked_app_package": "com.android.settings",
"record_video": true,
"analyze_video": false,
"request_timeout_seconds": 300
}
}
]
}
}
create 只保存已校验的草稿。检查返回批次编号和范围,用户已经授权执行时接着 mobile_batch(action="start", batch_id=...);用户只要求准备方案时留在草稿,不启动。保存 batch_id,用 get 跟踪各项状态。
用户要求压测时,在 batch.repeat_count 设置正整数循环次数(默认 1),只向 batch.cases 提交用户选择的用例。每轮按原顺序执行整批,再进入下一轮;各次执行独立保存编号和报告,get 中的 job 包含 iteration、repeat_count。总执行数为用例数乘以轮数,默认上限 10000,由服务的 ARTEMIS_BATCH_MAX_EXECUTIONS 控制。不要重复调用 start 来实现循环,也不要将循环次数写入每项 task_config。失败即停止会跳过后续全部轮次;复制失败项时各失败执行只重跑一次,新的批次循环次数为 1。
创建请求超时可能已经落库。先 lookup(request_id=...);需要重发时保留相同 request_id 和相同内容。服务会返回原批次,内容不同会拒绝。不要通过换编号“修复超时”,否则会形成重复批次。
Excel 导入
mobile_task_file(action="template") 返回空白模板的本地路径。“任务”页七列依次为:用例编号、检测项目、测试子项、测试用例、前置约束提取、Artemis提示词、任务配置(JSON)。仅提示词必填;说明页有一条示例,不会导入执行。JSON 支持 profile、model、reasoning_effort、device_serial、verification_level、explorer_mode、locked_app_package、record_video、analyze_video、request_timeout_seconds、max_retries、retry_interval_seconds、timeout_seconds。未知字段或密钥被拒绝。每行独立,不支持公式、宏、外部链接。
preview 返回 valid/tasks/errors,不会执行。网页默认全选,可取消用例;AI 也应按用户指定范围筛选 tasks。所有错误处理完后,将所选项的预览字段 row 去掉,作为 batch.cases 提交,并说明实际选中数量。不要跳过错误行却声称全部导入成功。
状态与异常
- 批次
draft等待开始;running调度中;paused等待处理;completed表示所有项进入终态,不代表全部通过。 - 单项
pending/queued/running/pausing/task_paused/resuming/finalizing尚未结束,completed/failed/cancelled/interrupted/skipped是终态。pausing是请求已发出而设备仍被占用,task_paused才表示设备已释放;finalizing在生成报告,不能提前宣称报告已完成。 - 批次
pause保留当前执行,只暂停后续派发;单项mobile_manage_task(pause)会在安全边界释放设备,Pro 的模型等待与只读诊断可中断。恢复后重新观察画面,并排到设备队尾,不阻塞后续项。mobile_manage_task(guidance_history)可核对指导是否从pending变为consumed,但仍需检查后续操作是否符合指导。设备断开、模型持续失败或任务达到批次时限会暂停后续派发;用诊断确认恢复后再响应用户的继续指令。 resume只继续未开始项;retry_failed复制失败、取消和中断项为新草稿,不修改原结果。必须来自用户的明确重跑请求。该动作不提供创建去重,响应不确定时先list查找新批次,不自动重复调用。- 用户明确要求删除批次记录时,先
get核对批次编号与状态,再delete;正在执行、排队或等待指导的批次不能删除。删除会同时移除该批次任务历史、报告和文件,无法撤销。
报告
mobile_export_report(batch_id=...) 下载批次 ZIP,包含汇总、各项报告和有序步骤截图;任务保存了录屏时,还包含对应录屏片段。报告格式由创建批次时的设置决定。单任务传 session_id(单任务 MCP 的 trace_id)以及可选 formats=["docx"]、["screenshots"]、["video"] 或 ["all"]。默认格式通过 mobile_config(section="reports") 查看。录屏与 AI 视频分析独立,只有保存了录屏才可下载片段。
结果文件在 MCP 主机的 artifacts/mcp_exports/。不要把 Office 文件内容当作文本塞入上下文;先检查工具返回的结构化结论,需要进一步审阅时再用宿主具备的文档工具打开文件。失败和未验证项也必须交付,保持原始证据。