必须让AI理解用户真实操作场景、权限边界和业务语义,否则生成数据会导致单元测试通过但集成环境报错;需分三步声明角色、操作入口与字段可见性,并用动词点击流、界面文本、业务规则替代抽象描述,最后为每条数据附加用户视角验证说明。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Cursor中编写测试数据生成提示词时,必须让AI理解用户真实操作场景、权限边界和业务语义,否则生成的数据会脱离实际使用路径,导致单元测试通过但集成环境报错。
明确声明用户身份与权限
第一步:在提示词开头用一句话定义角色,例如“你是一名刚入职的电商后台运营人员,只能查看订单列表、导出Excel,无权修改订单状态或删除数据”。
这一步不能省略——Cursor默认不预设上下文,若不声明角色,AI可能生成含管理员字段(如is_deleted: true)的测试数据,而该字段前端根本不可见,后续断言必然失败。
第二步:紧接着说明当前操作入口,例如“你现在正点击‘订单导出’按钮,弹窗中需填写‘开始时间’和‘结束时间’两个必填字段”。
第三步:指出用户可见字段与隐藏字段的区别,例如“用户界面上只显示‘订单号’‘下单时间’‘实付金额’三列,但后端接口返回还包含‘pay_channel_code’和‘refund_status’,这两个字段需保持合理逻辑关联,比如refund_status为‘success’时,pay_channel_code不能是‘wx_app’(微信小程序不支持原路退款)”。
用真实交互动作替代抽象描述
方法一:以动词开头模拟点击流
Agents 正在你的整个代码库中处理越来越复杂、运行时间更长的任务。本次版本引入了新的 agent 框架改进,以实现更好的上下文管理,并在编辑器和 CLI 中带来了许多提升使用体验的修复。
写成“点击筛选栏→选择‘近7天’→勾选‘已付款’状态→点击‘导出’→等待弹窗出现→输入开始时间为今天00:00:00”,而不是“生成符合近7天、已付款条件的订单数据”。
方法二:嵌入界面元素文本
直接引用按钮/标签上的文字,例如“导出文件名应匹配页面显示的‘导出订单列表_20240521.xlsx’格式,其中日期为用户点击导出时的当天”。【日期必须取自操作时刻而非硬编码】
绑定业务规则而非技术约束
不要写“生成10条status=2的数据”,要写“生成10条用户能看到的‘待发货’订单,这些订单的consignee_phone必须是大陆手机号格式(11位、以1开头),且shipping_address不能包含‘澳门’‘香港’字样——因为当前导出功能未开通港澳配送”。
这句的关键在于把技术字段映射到用户认知:“status=2”对应“待发货”,“shipping_address不含港澳”对应“未开通港澳配送”,AI才能避开生成合规但业务无效的数据。
最后一步:要求每条数据附带一句用户视角验证说明,例如“第3条数据中,order_amount=299.00且coupon_discount=50.00,用户在订单详情页确实能看到‘优惠券减50元’的明细行”。

















