From 101f06003cb794c551d3725cc457c12e301a2f36 Mon Sep 17 00:00:00 2001 From: song-tianyang Date: Tue, 17 May 2022 13:21:49 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=8E=A5=E5=8F=A3=E6=B5=8B=E8=AF=95):=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=B5=84=E6=BA=90=E6=B1=A0=E8=BF=90=E8=A1=8C?= =?UTF-8?q?=E7=BB=93=E6=9E=9C=E5=AD=98=E5=82=A8=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复资源池运行结果存储方法 --- .../metersphere/api/jmeter/KafkaListenerTask.java | 5 ++++- .../api/service/ApiScenarioReportService.java | 13 +++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/backend/src/main/java/io/metersphere/api/jmeter/KafkaListenerTask.java b/backend/src/main/java/io/metersphere/api/jmeter/KafkaListenerTask.java index 42cdba7ab7..f232b475e3 100644 --- a/backend/src/main/java/io/metersphere/api/jmeter/KafkaListenerTask.java +++ b/backend/src/main/java/io/metersphere/api/jmeter/KafkaListenerTask.java @@ -56,7 +56,9 @@ public class KafkaListenerTask implements Runnable { if (testResult != null) { if (testResult.getArbitraryData() != null && testResult.getArbitraryData().containsKey("TEST_END") && (Boolean) testResult.getArbitraryData().get("TEST_END")) { resultDTOS.add(testResult); - } else { + } + // 携带结果 + if (CollectionUtils.isNotEmpty(testResult.getRequestResults())) { String key = RUN_MODE_MAP.get(testResult.getRunMode()); if (assortMap.containsKey(key)) { assortMap.get(key).add(testResult); @@ -68,6 +70,7 @@ public class KafkaListenerTask implements Runnable { } } }); + if (MapUtils.isNotEmpty(assortMap)) { LoggerUtil.info("KAFKA消费执行内容存储开始"); testResultService.batchSaveResults(assortMap); diff --git a/backend/src/main/java/io/metersphere/api/service/ApiScenarioReportService.java b/backend/src/main/java/io/metersphere/api/service/ApiScenarioReportService.java index d43f460938..dc7250732e 100644 --- a/backend/src/main/java/io/metersphere/api/service/ApiScenarioReportService.java +++ b/backend/src/main/java/io/metersphere/api/service/ApiScenarioReportService.java @@ -96,14 +96,6 @@ public class ApiScenarioReportService { example.createCriteria().andReportIdEqualTo(dto.getReportId()); List requestResults = apiScenarioReportResultMapper.selectByExample(example); - if (StringUtils.isNotEmpty(dto.getTestPlanReportId())) { - String status = getStatus(requestResults, dto); - Map reportMap = new HashMap() {{ - this.put(dto.getReportId(), status); - }}; - testPlanLog.info("TestPlanReportId" + JSONArray.toJSONString(dto.getReportId()) + " EXECUTE OVER. SCENARIO STATUS : " + JSONObject.toJSONString(reportMap)); - } - ApiScenarioReport scenarioReport; if (StringUtils.equals(dto.getRunMode(), ApiRunMode.SCENARIO_PLAN.name())) { scenarioReport = updatePlanCase(requestResults, dto); @@ -287,6 +279,11 @@ public class ApiScenarioReportService { long errorSize = requestResults.stream().filter(requestResult -> StringUtils.equalsIgnoreCase(requestResult.getStatus(), ScenarioStatus.Error.name())).count(); String status = getStatus(requestResults, dto); + List requestResultIdList = new ArrayList<>(); + for (ApiScenarioReportResult result : requestResults) { + requestResultIdList.add(result.getId()); + } + testPlanLog.info("TestPlanReportId" + JSONArray.toJSONString(dto.getReportId()) + " EXECUTE OVER. STATUS : " + status + ", ResultIds:" + JSONObject.toJSONString(requestResultIdList)); ApiScenarioReport report = editReport(dto.getReportType(), dto.getReportId(), status, dto.getRunMode()); if (report != null) { if (StringUtils.isNotEmpty(dto.getTestPlanReportId()) && !testPlanReportIdList.contains(dto.getTestPlanReportId())) {