数据库sql查询支持上下文变量
This commit is contained in:
@@ -394,7 +394,10 @@ public class TestCaseServiceImpl implements ITestCaseService
|
||||
// sql查询特有字段结果存储
|
||||
Map<String, String> sqlSpecialResultMap = new HashMap<>();
|
||||
// 获取所有sql查询集合对象
|
||||
List<Map<String, Object>> resultMapList = MySQLExecutor.executeQuery(testCaseStep.getSqlCommand(), url, testDatasource.getUsername(), testDatasource.getPassword(), columnNameList, sqlSpecialResultMap);
|
||||
String sqlCommand = testCaseStep.getSqlCommand();
|
||||
sqlCommand = MySQLExecutor.replaceSqlVariables(sqlCommand, testCase.getContextResultMap());
|
||||
log.info("{}###Replace value sqlCommand:{}", testCase.getContextResultMap().keySet(), sqlCommand);
|
||||
List<Map<String, Object>> resultMapList = MySQLExecutor.executeQuery(sqlCommand, url, testDatasource.getUsername(), testDatasource.getPassword(), columnNameList, sqlSpecialResultMap);
|
||||
if (!CollectionUtils.isEmpty(resultMapList)) {
|
||||
SqlResult sqlResult = new SqlResult();
|
||||
sqlResult.setColumnNameList(columnNameList);
|
||||
@@ -645,7 +648,10 @@ public class TestCaseServiceImpl implements ITestCaseService
|
||||
*/
|
||||
private String dealDataSourceTestCaseStepAssignment(List<Map<String, Object>> resultMapList, Map<String, String> assignmentResultMap, Map<String, String> sqlSpecialResultMap, String assignment) {
|
||||
if (!StringUtils.isEmpty(assignment) && !"[]".equals(assignment)) {
|
||||
Gson gson = new Gson();
|
||||
Gson gson = new GsonBuilder()
|
||||
.registerTypeAdapter(Byte.class, new TinyIntTypeAdapter())
|
||||
.registerTypeAdapter(LocalDateTime.class, new LocalDateTimeConverter())
|
||||
.create();
|
||||
String responseBody = gson.toJson(resultMapList);
|
||||
Type ruleListType = new TypeToken<List<ExtractionRule>>() {}.getType();
|
||||
// 将 JSON 字符串解析为 List<ExtractionRule>
|
||||
|
||||
@@ -216,7 +216,7 @@ public class TestCaseStepServiceImpl implements ITestCaseStepService {
|
||||
JmeterRequest jmeterRequest = new JmeterRequest();
|
||||
jmeterRequest.setId(id);
|
||||
jmeterRequest.setUrl(url);
|
||||
jmeterRequest.setPort(testCaseStep.getApiPort());
|
||||
jmeterRequest.setPort(testCaseStep.getApiPort() == null ? 80 : testCaseStep.getApiPort());
|
||||
jmeterRequest.setMethod(testCaseStep.getRequestMethod());
|
||||
jmeterRequest.setRequestBody(testCaseStep.getRequestBody());
|
||||
jmeterRequest.setRequestParams(testCaseStep.getRequestParams());
|
||||
|
||||
Reference in New Issue
Block a user