今天在准备性测试脚本的时候,出现了失败,如下:

 

于是我增加了debug sampler进行变量值的打印,经检查,发现在执行多用户并发的时候,有的唯一值重复了,导致事务的前一个请求并没有真正成功,在做其他请求时,重新组装参数的时候,因为获取不到变量,出现了失败。

最后的解决办法为:

 添加前置处理器 BeanShell PreProcessor,内容如下

long timeStamp = System.nanoTime();
vars.put("timeStamp",timeStamp+"");

再重新执行并发,全部通过,搞定!

测试脚本的过程如下:

1、下单,并对响应结果的订单号进行保存

 

 

2、生成二维码,并且请求地址中需要传输上一个请求结果的订单号

 

 

在这之前我使用的方法为:函数助手--随机值,如下:

 

 

${__Random(20201026000001,20201026999999,)}