今天在准備性測試腳本的時候,出現了失敗,如下:
於是我增加了debug sampler進行變量值的打印,經檢查,發現在執行多用戶並發的時候,有的唯一值重復了,導致事務的前一個請求並沒有真正成功,在做其他請求時,重新組裝參數的時候,因為獲取不到變量,出現了失敗。
最后的解決辦法為:
添加前置處理器 BeanShell PreProcessor,內容如下
long timeStamp = System.nanoTime();
vars.put("timeStamp",timeStamp+"");
再重新執行並發,全部通過,搞定!
測試腳本的過程如下:
1、下單,並對響應結果的訂單號進行保存
2、生成二維碼,並且請求地址中需要傳輸上一個請求結果的訂單號
在這之前我使用的方法為:函數助手--隨機值,如下:
${__Random(20201026000001,20201026999999,)}