fix (接口自动化): 修复批量执行用例失败问题,修复日志关注人显示问题
--bug=1006207 --user=赵勇 【接口定义】批量执行... https://www.tapd.cn/55049933/s/1040127 --bug=1006054 --user=赵勇 【测试用例】添加/更新... https://www.tapd.cn/55049933/s/1040168
This commit is contained in:
parent
73c398b1c8
commit
34cbd83437
|
@ -620,16 +620,12 @@ public class ApiTestCaseService {
|
||||||
return ids;
|
return ids;
|
||||||
}
|
}
|
||||||
|
|
||||||
private ApiDefinitionExecResult addResult(String id, String status, ApiDefinitionExecResultMapper batchMapper) {
|
private ApiDefinitionExecResult addResult(String id, String status) {
|
||||||
ApiDefinitionExecResult apiResult = new ApiDefinitionExecResult();
|
ApiDefinitionExecResult apiResult = new ApiDefinitionExecResult();
|
||||||
apiResult.setId(UUID.randomUUID().toString());
|
apiResult.setId(UUID.randomUUID().toString());
|
||||||
apiResult.setCreateTime(System.currentTimeMillis());
|
apiResult.setCreateTime(System.currentTimeMillis());
|
||||||
apiResult.setStartTime(System.currentTimeMillis());
|
apiResult.setStartTime(System.currentTimeMillis());
|
||||||
apiResult.setEndTime(System.currentTimeMillis());
|
apiResult.setEndTime(System.currentTimeMillis());
|
||||||
ApiTestCaseWithBLOBs caseWithBLOBs = apiTestCaseMapper.selectByPrimaryKey(id);
|
|
||||||
if (caseWithBLOBs != null) {
|
|
||||||
apiResult.setName(caseWithBLOBs.getName());
|
|
||||||
}
|
|
||||||
apiResult.setTriggerMode(TriggerMode.BATCH.name());
|
apiResult.setTriggerMode(TriggerMode.BATCH.name());
|
||||||
apiResult.setActuator("LOCAL");
|
apiResult.setActuator("LOCAL");
|
||||||
apiResult.setUserId(Objects.requireNonNull(SessionUtils.getUser()).getId());
|
apiResult.setUserId(Objects.requireNonNull(SessionUtils.getUser()).getId());
|
||||||
|
@ -637,11 +633,6 @@ public class ApiTestCaseService {
|
||||||
apiResult.setStartTime(System.currentTimeMillis());
|
apiResult.setStartTime(System.currentTimeMillis());
|
||||||
apiResult.setType(ApiRunMode.DEFINITION.name());
|
apiResult.setType(ApiRunMode.DEFINITION.name());
|
||||||
apiResult.setStatus(status);
|
apiResult.setStatus(status);
|
||||||
batchMapper.insert(apiResult);
|
|
||||||
caseWithBLOBs.setLastResultId(apiResult.getId());
|
|
||||||
caseWithBLOBs.setUpdateTime(System.currentTimeMillis());
|
|
||||||
caseWithBLOBs.setStatus(APITestStatus.Running.name());
|
|
||||||
apiTestCaseMapper.updateByPrimaryKey(caseWithBLOBs);
|
|
||||||
return apiResult;
|
return apiResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -651,10 +642,20 @@ public class ApiTestCaseService {
|
||||||
Map<String, ApiDefinitionExecResult> executeQueue = new HashMap<>();
|
Map<String, ApiDefinitionExecResult> executeQueue = new HashMap<>();
|
||||||
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH);
|
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH);
|
||||||
ApiDefinitionExecResultMapper batchMapper = sqlSession.getMapper(ApiDefinitionExecResultMapper.class);
|
ApiDefinitionExecResultMapper batchMapper = sqlSession.getMapper(ApiDefinitionExecResultMapper.class);
|
||||||
request.getIds().forEach(testCaseId -> {
|
|
||||||
ApiDefinitionExecResult report = addResult(testCaseId, APITestStatus.Running.name(), batchMapper);
|
for (String testCaseId : request.getIds()) {
|
||||||
|
ApiDefinitionExecResult report = addResult(testCaseId, APITestStatus.Running.name());
|
||||||
|
ApiTestCaseWithBLOBs caseWithBLOBs = apiTestCaseMapper.selectByPrimaryKey(testCaseId);
|
||||||
|
if (caseWithBLOBs != null) {
|
||||||
|
report.setName(caseWithBLOBs.getName());
|
||||||
|
caseWithBLOBs.setLastResultId(report.getId());
|
||||||
|
caseWithBLOBs.setUpdateTime(System.currentTimeMillis());
|
||||||
|
caseWithBLOBs.setStatus(APITestStatus.Running.name());
|
||||||
|
apiTestCaseMapper.updateByPrimaryKey(caseWithBLOBs);
|
||||||
|
}
|
||||||
|
batchMapper.insert(report);
|
||||||
executeQueue.put(testCaseId, report);
|
executeQueue.put(testCaseId, report);
|
||||||
});
|
}
|
||||||
sqlSession.flushStatements();
|
sqlSession.flushStatements();
|
||||||
for (String caseId : executeQueue.keySet()) {
|
for (String caseId : executeQueue.keySet()) {
|
||||||
RunCaseRequest runCaseRequest = new RunCaseRequest();
|
RunCaseRequest runCaseRequest = new RunCaseRequest();
|
||||||
|
|
|
@ -22,6 +22,7 @@ public class DefinitionReference {
|
||||||
definitionColumns.put("request", "请求参数");
|
definitionColumns.put("request", "请求参数");
|
||||||
definitionColumns.put("response", "返回参数");
|
definitionColumns.put("response", "返回参数");
|
||||||
definitionColumns.put("description", "描述");
|
definitionColumns.put("description", "描述");
|
||||||
|
definitionColumns.put("followPeople", "关注人");
|
||||||
// 需要深度对比的字段,可以支持多个req1,req2
|
// 需要深度对比的字段,可以支持多个req1,req2
|
||||||
definitionColumns.put("ms-dff-col", "request,response,tags");
|
definitionColumns.put("ms-dff-col", "request,response,tags");
|
||||||
|
|
||||||
|
@ -33,6 +34,8 @@ public class DefinitionReference {
|
||||||
caseColumns.put("tags", "标签");
|
caseColumns.put("tags", "标签");
|
||||||
caseColumns.put("description", "描述");
|
caseColumns.put("description", "描述");
|
||||||
caseColumns.put("request", "请求参数");
|
caseColumns.put("request", "请求参数");
|
||||||
|
caseColumns.put("followPeople", "关注人");
|
||||||
|
|
||||||
// 深度对比字段
|
// 深度对比字段
|
||||||
caseColumns.put("ms-dff-col", "request,tags");
|
caseColumns.put("ms-dff-col", "request,tags");
|
||||||
|
|
||||||
|
|
|
@ -339,7 +339,8 @@
|
||||||
close() {
|
close() {
|
||||||
this.formData = {
|
this.formData = {
|
||||||
file: undefined,
|
file: undefined,
|
||||||
swaggerUrl: ''
|
swaggerUrl: '',
|
||||||
|
modeId: this.formData.modeId,
|
||||||
};
|
};
|
||||||
this.fileList = [];
|
this.fileList = [];
|
||||||
removeGoBackListener(this.close);
|
removeGoBackListener(this.close);
|
||||||
|
|
Loading…
Reference in New Issue