如何在post processor中基于总记录数计算mid与quarter位置
总记录数获取逻辑参考图示:
实现方案
通用逻辑
- 先将从响应头提取到的总记录数字符串转为整数,记为
totalCount - mid position(中位数位置):取总记录数的1/2,按需选择取整规则,常规分页场景推荐向上取整,公式为
向上取整(totalCount / 2) - quarter position(四分之一位置):取总记录数的1/4,同样按需选择取整规则,常规公式为
向上取整(totalCount / 4)
常用场景代码示例
1. JMeter JSR223后置处理器(Groovy语言)
// 替换X-Total-Count为你实际存储总记录数的响应头字段名 def totalCount = prev.getResponseHeader("X-Total-Count") as int // 计算位置,此处用向上取整,需要向下取整可替换Math.ceil为Math.floor def midPosition = Math.ceil(totalCount / 2) as int def quarterPosition = Math.ceil(totalCount / 4) as int // 结果存入JMeter变量,可供后续取样器直接调用 vars.put("mid_position", midPosition.toString()) vars.put("quarter_position", quarterPosition.toString())
2. Python requests 后置处理
import math # resp为请求返回的响应对象,替换X-Total-Count为实际响应头字段名 total_count = int(resp.headers.get("X-Total-Count", 0)) mid_position = math.ceil(total_count / 2) quarter_position = math.ceil(total_count / 4)
内容的提问来源于stack exchange,提问作者user16981359
相关产品推荐
相关产品推荐

