今天在准备性测试脚本的时候,出现了失败,如下:
于是我增加了debug sampler进行变量值的打印,经检查,发现在执行多用户并发的时候,有的唯一值重复了,导致事务的前一个请求并没有真正成功,在做其他请求时,重新组装参数的时候,因为获取不到变量,出现了失败。
最后的解决办法为:
添加前置处理器 BeanShell PreProcessor,内容如下
long timeStamp = System.nanoTime();
vars.put("timeStamp",timeStamp+"");
再重新执行并发,全部通过,搞定!
测试脚本的过程如下:
1、下单,并对响应结果的订单号进行保存
2、生成二维码,并且请求地址中需要传输上一个请求结果的订单号
在这之前我使用的方法为:函数助手--随机值,如下:
${__Random(20201026000001,20201026999999,)}