测试流程控制条件
分组
1.
2.
ForEach 循环
ForEach 使用示例
1.
2.
data[*].id
提取 data
中的所有 id
值作为数组。3.
4.
当前循环 element
{{$.1.element.data.name}}
。每次循环开始时,会基于当前循环的数组素更新这个变量的实际值。如果元素是个对象,可以通过使用 JSONPath 来提取对象中的某个子级字段。pm.variables.get("$.1.element")
来获取当前循环元素的实际值。当前循环 index
{{$.1.index}}
。第一次循环开始时,这个索引值为 0,之后每次循环开始时会 +1
更新值。pm.variables.get("$.1.index")
来获取当前循环元素的实际值。For 循环
使用示例
1.
2.
3.
当前循环 index
{{$.1.index}}
。第一次循环开始时,这个索引值为 0,之后每次循环开始时会 +1
更新值。pm.variables.get("$.1.index")
来获取当前循环元素的实际值。条件分支
1.
+
按钮,并选择「条件分支」。2.
saleStatus
,选择条件为“等于”,并输入比较值 true(即判断销售状态是否为 true,若是,则更改宠物信息为“已售出”)。3.
+ Else
按钮,新增“出售中的宠物列表”步骤(否则,查询在售中的宠物列表)。4.
判断规则
If
条件分支时,可以设置判断规则,满足规则后执行子步骤,否则跳过。在 ForEach
和 For
循环的“中断条件”中,同样可以设置判断规则,以便灵活控制流程的执行。规则 | 说明 |
---|---|
等于 | 判断两个值是否相等。 |
不等于 | 判断两个值是否不相等。 |
存在 | 判断字段或变量是否存在。 |
不存在 | 判断字段或变量是否不存在。 |
小于 | 判断一个值是否小于另一个值。 |
小于或等于 | 判断一个值是否小于或等于另一个值。 |
大于 | 判断一个值是否大于另一个值。 |
大于或等于 | 判断一个值是否大于或等于另一个值。 |
正则匹配 | 判断字符串是否符合指定的正则表达式。 |
包含 | 判断字符串或数组中是否包含指定的值。 |
不包含 | 判断字符串或数组中是否不包含指定的值。 |
为空 | 判断字段、数组或变量是否为空。 |
不为空 | 判断字段、数组或变量是否不为空。 |
属于集合 | 判断某个值是否属于指定的集合。 |
不属于集合 | 判断某个值是否不属于指定的集合。 |
"18"
与数字 18
,系统会将字符串 "18"
转换为数字 18
,然后进行比较。等于
{{$.5.resopnse.body.data.age}} 等于 18
不等于
{{$.4.response.body.data.status}} 不等于 已支付
存在
email
字段。{{$.3.response.body.data.email}} 存在
email
字段,则执行子步骤。不存在
phone
字段。{{$.2.response.body.data.phone}} 不存在
phone
字段,则执行子步骤。小于
{{$.1.response.body.data.stock}} 小于 10
小于或等于
{{$.2.response.body.data.age}} 小于或等于 12
大于
{{$.1.response.body.data.amount}} 大于 1000
大于或等于
{{$.3.response.body.data.points}} 大于或等于 500
正则匹配
{{$.2.response.body.data.email}} 正则匹配 /^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$/i
test@gmail.com
),则执行子步骤。/
包围的正则模式,并且可以在末尾添加修饰符(如 g
表示全局匹配,i
表示不区分大小写等),不清楚如何写正则表达式的可以学一下这里的 MDN 文档。包含
{{$.3.response.body.data.roles}} 包含 admin
不包含
{{$.4.response.body.data.cartItems}} 不包含 productId123
为空
{{$.2.response.body.data.remarks}} 为空
不为空
{{$.1.response.body.data.orderRemarks}} 不为空