Jmeter--經過json或JDBC獲取目標數據
-
JDBC
- 配置JDBC Connenction Configuration
- JDBC Request
- Variable Name Bound to Pool
引用JDBC Connenction Configuration中的Variable Name for created pool
- Query Type
- Select Statement
- Update Statement
- Prepared Update Statement
使用parameter values
- Prepared Select Statement
- ...
- Query
- sql
- 可使用函數
- 例如 SET end_time ='${__time(yyyy-MM-dd 00:00:00)}'
- ${__timeShift(yyyy-MM-dd 00:00:00,,P3D,,)}
- ${__timeShift(yyyy-MM-dd 00:00:00,,P-${__Random(4,6,)}D,,)},${instanceId}
- ?引用parameter value
- Parameter values
- Parameter types
-
json
- Bean Shell PostProcessor
- import org.json.*;
- 獲取獲取請求的返回值
String response_str = prev.getResponseDataAsString();
- 將String類型的返回值構形成JSONObject對象,提取data構形成JSONArray對象
JSONObject response_obj = new JSONObject(response_str);JSONArray data_arr = response_obj.getJSONArray("data");
- 獲取Province數組的長度
int len = data_arr.length();
- 遍歷data_arr,保存鍵值
for(int i=0 ;i < len;++i){ JSONObject job = (JSONObject) data_arr.get(i);// log.info(job.getString("jobDesc")); if(job.getString("executorHandler").contains(executorHandler_1)||job.getString("executorHandler").contains(executorHandler_2)){ log.info(job.getString("executorHandler")); if(job.getString("executorHandler").contains(executorHandler_1)){// String id_1=job.getString("id"); log.info(job.getString("id")); vars.put("id_1",job.getString("id")); }else{// String id_2=job.getString("id");log.info(job.getString("id")); vars.put("id_2",job.getString("id")); } }
歡迎關注本站公眾號,獲取更多信息