一、目前几个手动测试流程的case demo
0. 创造测试环境(插入测试数据)、获取测试数据
1. 测试账号密码是否正确(接口层面)
- 调用获取验证码接口
- 根据UUID,去redis中查询验证码的值
- 发起登录请求
- 判断返回值
2. 测试昵称是否一致(数据库层面)
- 获取用户账号列表和预期昵称
- 执行sql,获取结果
- 判断是否一致
3. 测试A账号发券后,B账号可见,C账号不可见(UI层面)
-
能否正常发券
- 打开浏览器
- 跳转URL
- 登录A账号
- 是否有模板列表页面
- 是否有指定模板
- 跳转页面,进入指定模板的上传页面
- 填写相应信息
- 点击上传按钮
- 是否有报错
-
B是否可见
- 打开浏览器
- 跳转URL
- 登录A账号
- 是否存在审批页面进入菜单
- 进入审批页面
- 是否能看到对应申请单
-
C是否不可见
1-6同上
二、抽象出来的逻辑(最小动作?)
- 判断Assert (pytest)
- 通过页面元素获取值 (playwright)
- 打开浏览器 (playwright)
- 跳转URL (playwright)
- 输入值 (playwright:包括文本,文件等)
- 获取redis的value (python)
- 执行sql获取返回值 (python)
- 获取页面的某个元素 (playwright)
- 是否存在某个元素 (playwright)
- 点击页面的某个值 (playwright)
- 调用某个接口(requests)
三、从文本中,生成测试代码
- 解析文本
- 判断是否具备所有的动作
- 自动生成测试代码
- 生成报告