Jmeter Json提取
This commit is contained in:
@@ -2,14 +2,17 @@ package com.test.test.service.impl;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
import com.test.common.core.domain.model.*;
|
||||
import com.test.common.utils.DateUtils;
|
||||
import com.test.common.utils.JMeterGroupUtil;
|
||||
import com.test.common.utils.SecurityUtils;
|
||||
import com.test.common.utils.StringUtils;
|
||||
import com.test.test.domain.PerformanceTest;
|
||||
import com.test.test.domain.PerformanceTestCase;
|
||||
import com.test.test.domain.PerformanceTestCaseReport;
|
||||
import com.test.test.domain.TestCaseStep;
|
||||
import com.test.test.domain.qo.ExtractionRule;
|
||||
import com.test.test.mapper.PerformanceTestCaseMapper;
|
||||
import com.test.test.mapper.PerformanceTestCaseReportMapper;
|
||||
import com.test.test.mapper.PerformanceTestMapper;
|
||||
@@ -21,6 +24,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.lang.reflect.Type;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@@ -164,6 +168,20 @@ public class PerformanceTestCaseReportServiceImpl implements IPerformanceTestCas
|
||||
jmeterRequest.setRequestBody(testCaseStep.getRequestBody());
|
||||
jmeterRequest.setRequestParams(testCaseStep.getRequestParams());
|
||||
jmeterRequest.setRequestHeader(testCaseStep.getRequestHeader());
|
||||
// Json提取表达式
|
||||
String assignment = testCaseStep.getAssignment();
|
||||
if (!StringUtils.isEmpty(assignment) && !"[]".equals(assignment)) {
|
||||
Gson gson = new Gson();
|
||||
Type ruleListType = new TypeToken<List<ExtractionRule>>() {}.getType();
|
||||
List<ExtractionRule> rules = gson.fromJson(assignment, ruleListType);
|
||||
if (!CollectionUtils.isEmpty(rules)) {
|
||||
List<String> extractionRuleList = new ArrayList<>();
|
||||
for (ExtractionRule rule : rules) {
|
||||
extractionRuleList.add(rule.getName() + "," + rule.getPath());
|
||||
jmeterRequest.setExtractionRuleList(extractionRuleList);
|
||||
}
|
||||
}
|
||||
}
|
||||
log.info("getRequestHeader:{}", jmeterRequest.getRequestHeader());
|
||||
return jmeterRequest;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user