1、beanshell中引入第三方j(luò)ar
1)在jmeter測試計(jì)劃中導(dǎo)入本地打好的jar

image.png
2)引用jar中的方法

image.png
2、beanshell中生成隨機(jī)數(shù)引用
1)在beanshell中寫好生成隨機(jī)數(shù)的方法,然后結(jié)合控制臺(tái)和調(diào)試取樣器查看值是否取的正確

image.png
2)調(diào)試取樣器查看是否取到值

image.png
PS:隨機(jī)數(shù)生成的方式也可以用jmeter自帶的隨機(jī)變量,看自己需求

image.png
3、僅一次控制器用法-場景構(gòu)造多訂單數(shù)據(jù)時(shí),只需要登陸一次

image.png
4、接口中需要構(gòu)造json數(shù)據(jù)-場景提交訂單接口需要構(gòu)造100sku

image.png
1)本地構(gòu)造此格式的sku數(shù)據(jù)
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.io.IOException;
import java.io.BufferedReader;
import java.io.FileReader;
public class orderData {
/**
* 構(gòu)造100skuList
* @param sku-從csv文件讀取100個(gè)skuid然后拼接成skuList
* @return
*/
public static JSONObject setSkuList(String sku) {
JSONObject data = new JSONObject();
data.put("skuId", sku);
data.put("count", 1);
data.put("orderUnit", 1);
data.put("unitConversionNum", null);
data.put("type", 0);
return data;
}
public static void main(String[] args) {
String csvFile = "/Users/shifangfang/Desktop/sku.csv";
String line = "";
String cvsSplitBy = ",";
int startLine=0;
int maxLine=100;
JSONArray skuData = new JSONArray();
try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) {
while ((line = br.readLine()) != null ) {
if(startLine<maxLine){
String[] contents = line.split(cvsSplitBy);
skuData.add(setSkuList(contents[0]));
startLine++;
}
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(skuData);
}
}