这是一个基于spring boot的restful接口,post /api/v1/register,接收json格式的{username, email, password, confirmpassword},要求username长度2-16位、email需符合rfc5322规范、password至少8位含大小写字母和数字、confirmpassword必须与password完全一致。请按以下字段生成20条测试用例:用例编号、测试标题、前置条件、输入数据(json格式)、执行步骤、预期http状态码、预期响应体关键词。所有用例必须覆盖:① username为空/超长/含特殊字符;② email为null/格式非法/已存在;③ password不符合复杂度/与confirmpassword不一致;④ 409冲突、400校验失败、201成功三种状态。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要在30分钟内为新上线的用户注册接口生成覆盖边界值、异常输入和业务逻辑的完整测试用例,但手动编写容易遗漏拼写错误、空字符串、超长邮箱等典型缺陷场景。
明确需求并构造高质量提示词
打开ChatGPT对话界面,第一句就写清被测对象的技术上下文:不是笼统说“帮我写测试用例”,而是直接声明“这是一个基于Spring Boot的RESTful接口,POST /api/v1/register,接收JSON格式的{username, email, password, confirmPassword},要求username长度2-16位、email需符合RFC5322规范、password至少8位含大小写字母和数字、confirmPassword必须与password完全一致”。
紧接着给出结构化指令:“请按以下字段生成20条测试用例:用例编号、测试标题、前置条件、输入数据(JSON格式)、执行步骤、预期HTTP状态码、预期响应体关键词。所有用例必须覆盖:① username为空/超长/含特殊字符;② email为null/格式非法/已存在;③ password不符合复杂度/与confirmPassword不一致;④ 409冲突、400校验失败、201成功三种状态。”
【关键前提】必须提供真实接口文档片段或curl示例,否则ChatGPT会虚构字段名或忽略约束条件,导致生成的用例无法执行。
筛选与修正生成结果
方法一:逐条验证HTTP状态码合理性
检查ChatGPT输出中所有标称“400 Bad Request”的用例,确认其输入是否真触发后端校验——比如它可能把“email为空”列为400,但实际接口设计是允许空邮箱的,这种就必须删除。
方法二:用正则批量过滤无效用例
复制全部用例到VS Code,搜索"\"email\":\".*?@.*?\"",删掉所有未匹配的行;再搜索"\"password\":\".{0,7}\"",保留这些行并手动补全confirmPassword字段。
用于在用户想通过浏览器自动化与 Google Gemini 或 ChatGPT 交互时。触发短语包括“ask Gemini”“ask ChatGPT”“ask GPT”“让...”。
注意:ChatGPT常把“密码少于8位”和“两次输入不一致”混在同一用例里,这违反单一故障原则,必须拆成两个独立用例。
注入真实业务规则补全逻辑分支
第一步:提取接口返回体中的业务错误码
用Postman调通注册接口,记录真实返回如{"code":1002,"message":"用户名已被占用"},把code=1002加入提示词:“当username重复时,必须返回code=1002而非HTTP 409”。
第二步:追加追问生成缺失分支
对ChatGPT发送:“刚才生成的用例中缺少‘用户名已存在’场景,请基于code=1002补充5条用例,输入数据中username必须使用已知存在的值如‘admin’‘testuser’,且email/password任意合法。”
第三步:交叉验证字段依赖关系
发现ChatGPT生成的“email格式错误但username超长”用例,实际后端校验顺序是先验username再验email,所以这类组合用例应删除——【不可跳过】必须对照接口源码或Swagger定义确认校验优先级。
导出为可执行格式
将最终确认的20条用例,在ChatGPT中输入指令:“把以上用例转成Excel兼容的CSV格式,用英文逗号分隔,字段顺序为:ID,Title,Precondition,InputData,Steps,StatusCode,ExpectedResponse。InputData字段内容用单引号包裹,避免内部JSON逗号干扰。”
复制返回的纯文本,粘贴进记事本,另存为UTF-8编码的register_testcases.csv,双击即可用Excel打开。










