OpenClaw 实战:5 分钟用 AI Agent 自动生成规范测试用例并写入 Excel

OpenClaw 实战:5 分钟用 AI Agent 自动生成规范测试用例并写入 Excel

OpenClaw 实战:5 分钟用 AI Agent 自动生成规范测试用例并写入 Excel

一、核心前提

OpenClaw 是轻量级 Agent 框架,核心聚焦:
Skill 注册 → 工具选择 → 任务执行

  • 没有 Dify 的可视化界面
  • 没有知识库、没有复杂工作流
  • 代码极简洁、上手极快
  • 适合:测试开发 / 有编程能力的测试工程师

一句话定位:
OpenClaw = 极简、轻量、只专注做工具调用的小 Agent 引擎

二、环境准备

1. 安装 OpenClaw 及依赖

# 安装 OpenClaw 核心框架 pip install openclaw # Excel 操作 + LLM 调用 pip install openpyxl openai requests 

2.配置 LLM 密钥

import os # 替换成你的 OpenAI API Key os.environ["OPENAI_API_KEY"]="你的API Key"

三、完整实现代码(测试用例生成 + 写入 Excel)

import json import openpyxl from openpyxl.styles import Font, Alignment, PatternFill from openclaw import Agent, Tool, Parameter from openclaw.llms import OpenAILLM # ===================== Skill 1:生成测试用例 =====================classTestCaseGenerateTool(Tool): name ="test_case_generator" description =""" 软件测试专用工具:根据产品需求生成结构化测试用例,包含用例ID、模块、用例标题、前置条件、操作步骤、预期结果、优先级 必须返回JSON数组格式的用例数据,每个用例是字典 """ parameters =[ Parameter( name="requirement",type="str", description="产品需求描述", required=True), Parameter( name="module",type="str", description="测试模块名称", required=True), Parameter( name="priority",type="str", description="用例优先级(高/中/低)", required=True)]defrun(self, requirement:str, module:str, priority:str)->str: prompt =f""" 作为资深软件测试工程师,根据以下需求生成{priority}优先级的{module}测试用例: 需求描述:{requirement} 要求: 1. 用例字段:用例ID、模块、用例标题、前置条件、操作步骤、预期结果、优先级 2. 用例ID格式:模块缩写+序号(比如登录模块→DL001) 3. 覆盖所有功能点、边界条件、异常场景 4. 返回纯JSON数组,无多余文字 """ llm = OpenAILLM(model="gpt-3.5-turbo", temperature=0.3) response = llm.chat.completions.create( messages=[{"role":"user","content": prompt}], model="gpt-3.5-turbo") test_cases = json.loads(response.choices[0].message.content.strip())for i,caseinenumerate(test_cases,1):case["用例ID"]=f"{module[:2].upper()}00{i}"return json.dumps(test_cases, ensure_ascii=False)# ===================== Skill 2:写入Excel =====================classExcelWriteTool(Tool): name ="excel_writer" description =""" 软件测试专用工具:把JSON格式的测试用例列表写入Excel,生成规范的测试用例文档 支持字段:用例ID、模块、用例标题、前置条件、操作步骤、预期结果、优先级 """ parameters =[ Parameter( name="test_cases",type="str", description="JSON格式的测试用例列表", required=True), Parameter( name="file_path",type="str", description="Excel保存路径", required=True)]defrun(self, test_cases:str, file_path:str)->str:try: cases = json.loads(test_cases) wb = openpyxl.Workbook() ws = wb.active ws.title ="功能测试用例" headers =["用例ID","模块","用例标题","前置条件","操作步骤","预期结果","优先级"]for col, header inenumerate(headers,1): cell = ws.cell(row=1, column=col, value=header) cell.font = Font(bold=True, color="FFFFFF") cell.fill = PatternFill(start_color="4472C4", end_color="4472C4", fill_type="solid") cell.alignment = Alignment(horizontal="center")for row,caseinenumerate(cases,2):for col, header inenumerate(headers,1): cell_value =case.get(header,"无") ws.cell(row=row, column=col, value=cell_value) ws.cell(row=row, column=col).alignment = Alignment(horizontal="center") col_widths =[10,15,30,20,40,30,10]for i, width inenumerate(col_widths,1): ws.column_dimensions[chr(64+i)].width = width wb.save(file_path)returnf"成功!测试用例已写入 {file_path},共 {len(cases)} 条用例"except Exception as e:returnf"失败:{str(e)}"# ===================== 初始化 Agent =====================definit_openclaw_agent(): llm = OpenAILLM(model="gpt-3.5-turbo", temperature=0.3) tools =[TestCaseGenerateTool(), ExcelWriteTool()] agent = Agent( llm=llm, tools=tools, system_prompt=""" 你是软件测试专属Agent,负责: 1. 先调用 test_case_generator 生成测试用例 2. 再调用 excel_writer 把用例写入Excel 3. 最终返回Excel生成结果 """, verbose=True)return agent # ===================== 执行 =====================if __name__ =="__main__": agent = init_openclaw_agent() user_task =""" 请生成登录模块的高优先级测试用例,需求: 用户登录功能支持手机号+验证码登录,手机号非11位提示「请输入正确手机号」, 验证码错误3次后账号锁定10分钟,登录成功跳转到首页。 生成后把用例写入 ./登录模块测试用例.xlsx """ result = agent.run(user_task)print("\n===== 最终结果 =====")print(result)

四、核心代码解释

  1. Skill 定义核心:
Tool= 技能 / 函数 name:工具名 description:Agent 判断什么时候调用该工具 parameters:告诉 AI 需要什么参数 run():真正执行逻辑 

2. Agent 执行逻辑:

 思考:用户需要生成测试用例 → 调用 test_case_generator 参数提取成功 → 生成用例 再思考:需要写入 Excel → 调用 excel_writer 最终返回结果 

五、运行效果

控制台输出

===== 最终结果 ===== 成功!测试用例已写入 ./登录模块测试用例.xlsx,共 5 条用例 

Excel 文件内容

标准 7 列测试用例 美观规范,可直接提交评审 可直接导入测试平台 

六、OpenClaw 进阶扩展

1. 解析 PDF/Word 需求文档

classDocumentParseTool(Tool): name ="document_parser" description ="解析PDF/Word格式的产品需求文档,提取核心需求文本" parameters =[Parameter(name="file_path",type="str", description="文档路径", required=True)]defrun(self, file_path:str)->str:import PyPDF2 withopen(file_path,"rb")as f: reader = PyPDF2.PdfReader(f) content ="\n".join([page.extract_text()for page in reader.pages])return content 
classTestLinkUploadTool(Tool): name ="testlink_uploader" description ="把测试用例导入TestLink测试管理平台" parameters =[Parameter(name="test_cases",type="str", description="JSON用例列表", required=True)]defrun(self, test_cases:str)->str:# 调用 TestLink API 实现导入return"用例已成功导入TestLink"

七、总结

OpenClaw 核心流程:
定义 Tool(技能)
注册给 Agent
输入一句话任务
Agent 自动选择工具、自动执行、自动输出结果
优势:
轻量、无冗余
代码完全可控
适合嵌入自动化脚本、CI/CD
比可视化平台更灵活、更适合测试开发

Read more

医疗AI多智能体资源调度:用Python构建高性能MCU资源池

医疗AI多智能体资源调度:用Python构建高性能MCU资源池

作者 | Allen_lyb 发布时间 | 2026年1月 标签 | #Python #异步编程 #医疗AI #资源调度 #系统架构 引言 最近在重构我们的医疗AI服务平台时,遇到了一个典型的多智能体资源争用问题。想象一下这样的场景: * 急诊风险预警智能体检测到患者可能发生脓毒症,需要立即调用GPU进行推理 * 同时,影像分析智能体正在处理一批CT扫描,也需要GPU资源 * 质控智能体要分析医嘱合规性,需要调用大语言模型接口 * 病历总结智能体正在为出院患者生成报告 所有智能体都在"抢"有限的GPU卡、模型并发槽位、API调用额度。如果让每个智能体自己管理资源抢占,结果就是: 1. 资源利用不均:有的GPU卡空闲,有的被排队挤爆 2. 优先级混乱:急诊任务可能被常规任务阻塞 3. 无法审计:谁占用了什么资源?为什么失败?说不清楚 这就是我们需要一个中央调度器的原因。在多方会议系统中,这类组件被称为MCU(多点控制单元)

测评6款热门AI原型图工具:Cursor、Figma、墨刀AI尽在其中

测评6款热门AI原型图工具:Cursor、Figma、墨刀AI尽在其中

我们都知道,产品经理常常在各个需求中徘徊,各个会议里穿梭,真正能静下心来画原型图的时间,往往是在夜深人静的时刻。而那些号称能“解放产品经理双手”的AI原型图工具,究竟能否在真实的工作场景中发挥作用?为此,我们对当前几款热门的AI原型图工具进行了实测评估,包括:Cursor、FigmaMake、墨刀AI、FramerAI、UizardAI 和 Loveable.dev,看看哪一款工具更值得投入使用。 一、6个AI原型图工具测评总览 通过体验对比,我们将6款AI工具按照功能侧重点划分为三类: * 结构派(重原型结构):墨刀AI、FramerAI,更注重页面结构和功能流程; * 界面派(重UI设计):FigmaMake、UizardAI,侧重视觉效果和界面呈现; * 技术派(重代码实现):Cursor、Loveable.dev,通过AI生成代码实现原型,更适合有技术背景的用户。 通过对这6个AI原型图工具的测试体验,综合测评下来结论如下: 1. AI能帮助产品经理产出原型图吗? 答案:是的。目前这几款AI工具都可以通过文本输入快速生成较为高保真的原型界面,基本能满足初稿需

你的 AI 助手不想“活在云端“:CoPaw 项目评估

你的 AI 助手不想“活在云端“:CoPaw 项目评估

当大多数 AI 助手产品都在争夺云端托管用户时,CoPaw 选择了一条相反的路:把 Agent 部署在你自己的机器上,接入你熟悉的钉钉、飞书和 QQ,用 Markdown 文件定义打工技能。 这篇文章写给那些想用 AI 做真正"私活"、又不想把数据和控制权交出去的工程师和架构师。 一、所有 AI 助手都有一个共同前提——你必须信任他们的云 打开市面上任何一款"个人 AI 助手"产品,你会发现它们有一个隐含的使用协议:你的对话在他们的服务器上处理,你的文件提交给他们的存储,你的 API Key 存在他们的数据库里。 这个前提对大多数工具类场景没什么问题。但当你需要 AI 助手帮你摘读邮件、整理本地文件、定时跑脚本、甚至控制桌面——这时"信任云端&

AI编程完全指南:从入门到精通,让AI成为你的编程搭档(附完整案例)

AI编程完全指南:从入门到精通,让AI成为你的编程搭档(附完整案例)

文章目录 * 📋 总览 * 一、AI编程的核心原则 🎯 * 1.1 规则至上,限制为王 * 1.2 提示词工程的艺术 * 1.3 工具选择建议 * 二、Cursor规则配置详解 ⚙️ * 2.1 全局规则设置 * 2.2 .cursorrules文件详解 * 2.2.1 基础规则模板 * 2.2.2 高级规则配置 * 2.3 规则文件的作用机制 * 三、实战案例:图书管理系统 🎯 * 3.1 项目需求分析 * 3.2 目录结构设计 * 3.3 开发流程演示 * 3.4 最终效果展示 * 四、进阶技巧与最佳实践