YAML测试中GTE测试用例中的payload和断言怎么写,请具体描述并举例
时间: 2024-10-16 09:08:43 浏览: 17
python自动化之-项目测试用例设计+读取Excel测试用例-代码
在YAML(YAML 测试文件)中的 GTE (Greater Than or Equal) 或者类似断言测试用例中,`payload`(数据)通常是你要发送到服务端的输入数据,而断言则是检查预期结果是否与实际返回值相匹配的部分。
**Payload书写示例:**
假设我们正在测试一个订单系统,其中有一个创建新订单的功能,接收两个参数:用户ID(userId)和订单金额(orderAmount)。以下是创建新订单的测试用例,payload可能会像这样:
```yaml
request:
method: POST
url: /orders
headers:
Authorization: Bearer <access_token>
body:
userId: 123456
orderAmount: 100.00
```
这里,`payload`字段包含了用户ID(字符串)和订单金额(浮点数)作为请求体的数据。
**断言写作示例:**
在期望的响应(response)部分,你可以设置断言来验证订单是否成功创建以及返回的状态码。例如,你可能期望状态码是201 Created,并且返回的新订单ID存在于响应的payload中:
```yaml
response:
status_code: 201
content:
- schema:
$ref: '#/components/schemas/NewOrder'
assertions:
- expression: $.data.id > 0
description: 新订单的ID应大于0
- expression: $.data.userId == request.body.userId
description: 订单创建者的ID应与请求一致
```
这里的`assertions`部分,第一个`expression`指定了一个比较条件(新订单ID大于0),第二个`expression`则是一个引用,比较请求(`request`)中的userId字段与响应(`response`)中data.userId字段。
阅读全文