From 997be02950771f3b447cafd697aedbe9f3943e50 Mon Sep 17 00:00:00 2001 From: fit2-zhao Date: Thu, 24 Dec 2020 17:51:53 +0800 Subject: [PATCH 1/5] =?UTF-8?q?fix(=E6=8E=A5=E5=8F=A3=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=8C=96):=20=E4=BF=AE=E5=A4=8D=E5=9C=BA=E6=99=AF=E5=8F=98?= =?UTF-8?q?=E9=87=8F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/dto/definition/request/MsScenario.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/backend/src/main/java/io/metersphere/api/dto/definition/request/MsScenario.java b/backend/src/main/java/io/metersphere/api/dto/definition/request/MsScenario.java index db3cbf8834..b70b2f703a 100644 --- a/backend/src/main/java/io/metersphere/api/dto/definition/request/MsScenario.java +++ b/backend/src/main/java/io/metersphere/api/dto/definition/request/MsScenario.java @@ -84,7 +84,7 @@ public class MsScenario extends MsTestElement { } // 场景变量 if (CollectionUtils.isNotEmpty(this.getVariables())) { - tree.add(arguments()); + tree.add(arguments(config)); } if (CollectionUtils.isNotEmpty(hashTree)) { @@ -95,7 +95,7 @@ public class MsScenario extends MsTestElement { } - private Arguments arguments() { + private Arguments arguments(ParameterConfig config) { Arguments arguments = new Arguments(); arguments.setEnabled(true); arguments.setName(name + "Variables"); @@ -104,7 +104,12 @@ public class MsScenario extends MsTestElement { variables.stream().filter(KeyValue::isValid).filter(KeyValue::isEnable).forEach(keyValue -> arguments.addArgument(keyValue.getName(), keyValue.getValue(), "=") ); + if (config != null && config.getConfig() != null && config.getConfig().getCommonConfig() != null + && CollectionUtils.isNotEmpty(config.getConfig().getCommonConfig().getVariables())) { + config.getConfig().getCommonConfig().getVariables().stream().filter(KeyValue::isValid).filter(KeyValue::isEnable).forEach(keyValue -> + arguments.addArgument(keyValue.getName(), keyValue.getValue(), "=") + ); + } return arguments; } - } From 6b01aaa878a3291e0b362dec9eda434bd66966f4 Mon Sep 17 00:00:00 2001 From: "Captain.B" Date: Thu, 24 Dec 2020 18:15:03 +0800 Subject: [PATCH 2/5] chore: Sync --- frontend/src/business/components/xpack | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/business/components/xpack b/frontend/src/business/components/xpack index 010ad7a5f0..8cda5c873c 160000 --- a/frontend/src/business/components/xpack +++ b/frontend/src/business/components/xpack @@ -1 +1 @@ -Subproject commit 010ad7a5f072a5e9d368c756a2473bbd20781433 +Subproject commit 8cda5c873cd9985c97adb34efacf507167fa4182 From 4e8deba17b231e5a4ff985ba2f58276a10023b80 Mon Sep 17 00:00:00 2001 From: fit2-zhao Date: Thu, 24 Dec 2020 18:15:28 +0800 Subject: [PATCH 3/5] =?UTF-8?q?fix(=E6=8E=A5=E5=8F=A3=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=8C=96):=20=E6=8A=A5=E5=91=8A=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ApiAutomationController.java | 7 +++ .../api/service/ApiAutomationService.java | 4 -- .../automation/scenario/ApiScenarioList.vue | 45 ++++++++++++++++--- 3 files changed, 47 insertions(+), 9 deletions(-) diff --git a/backend/src/main/java/io/metersphere/api/controller/ApiAutomationController.java b/backend/src/main/java/io/metersphere/api/controller/ApiAutomationController.java index 044508da51..fb49ac9127 100644 --- a/backend/src/main/java/io/metersphere/api/controller/ApiAutomationController.java +++ b/backend/src/main/java/io/metersphere/api/controller/ApiAutomationController.java @@ -90,6 +90,13 @@ public class ApiAutomationController { apiAutomationService.run(request); } + @PostMapping(value = "/run/batch") + public void runBatch(@RequestBody RunScenarioRequest request) { + request.setExecuteType(ExecuteType.Saved.name()); + apiAutomationService.run(request); + } + + @PostMapping("/getReference") public ReferenceDTO getReference(@RequestBody ApiScenarioRequest request) { return apiAutomationService.getReference(request); diff --git a/backend/src/main/java/io/metersphere/api/service/ApiAutomationService.java b/backend/src/main/java/io/metersphere/api/service/ApiAutomationService.java index bf7077a9b0..2f620e1825 100644 --- a/backend/src/main/java/io/metersphere/api/service/ApiAutomationService.java +++ b/backend/src/main/java/io/metersphere/api/service/ApiAutomationService.java @@ -297,10 +297,6 @@ public class ApiAutomationService { testPlan.setHashTree(new LinkedList<>()); HashTree jmeterTestPlanHashTree = new ListedHashTree(); String projectID = request.getProjectId(); - // 批量执行的结果直接存储为报告 - if (apiScenarios.size() > 1) { - request.setExecuteType(ExecuteType.Saved.name()); - } boolean isOne = true; for (ApiScenarioWithBLOBs item : apiScenarios) { MsThreadGroup group = new MsThreadGroup(); diff --git a/frontend/src/business/components/api/automation/scenario/ApiScenarioList.vue b/frontend/src/business/components/api/automation/scenario/ApiScenarioList.vue index 6285b48fd6..f8b2f0ca09 100644 --- a/frontend/src/business/components/api/automation/scenario/ApiScenarioList.vue +++ b/frontend/src/business/components/api/automation/scenario/ApiScenarioList.vue @@ -6,7 +6,7 @@ :show-create="false"/> - +