refactor(接口测试): 支持定时任务走默认环境
--bug=1028854 --user=赵勇 【接口测试】场景定时执行-默认环境-场景配置了环境-定时执行获取环境执行失败 https://www.tapd.cn/55049933/s/1404624 Signed-off-by: fit2-zhao <yong.zhao@fit2cloud.com>
This commit is contained in:
parent
75e2991219
commit
eac007c3e4
|
@ -266,19 +266,4 @@ public class MsScenario extends MsTestElement {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void setEnv(Map<String, String> environmentMap, Map<String, EnvironmentConfig> envConfig) {
|
||||
for (String projectId : environmentMap.keySet()) {
|
||||
BaseEnvironmentService apiTestEnvironmentService = CommonBeanFactory.getBean(BaseEnvironmentService.class);
|
||||
ApiTestEnvironmentWithBLOBs environment = apiTestEnvironmentService.get(environmentMap.get(projectId));
|
||||
if (environment != null && StringUtils.isNotEmpty(environment.getConfig())) {
|
||||
EnvironmentConfig env = JSONUtil.parseObject(environment.getConfig(), EnvironmentConfig.class);
|
||||
env.setEnvironmentId(environment.getId());
|
||||
envConfig.put(projectId, env);
|
||||
if (StringUtils.equals(environment.getName(), MockConfigStaticData.MOCK_EVN_NAME)) {
|
||||
this.setMockEnvironment(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,9 +4,11 @@ package io.metersphere.commons.utils;
|
|||
import io.metersphere.api.dto.EnvironmentType;
|
||||
import io.metersphere.api.dto.definition.request.*;
|
||||
import io.metersphere.api.dto.definition.request.variable.ScenarioVariable;
|
||||
import io.metersphere.api.dto.scenario.environment.EnvironmentConfig;
|
||||
import io.metersphere.api.jmeter.NewDriverManager;
|
||||
import io.metersphere.api.jmeter.ResourcePoolCalculation;
|
||||
import io.metersphere.base.domain.ApiScenarioWithBLOBs;
|
||||
import io.metersphere.base.domain.ApiTestEnvironmentWithBLOBs;
|
||||
import io.metersphere.base.domain.TestResource;
|
||||
import io.metersphere.base.domain.TestResourcePool;
|
||||
import io.metersphere.base.mapper.TestResourcePoolMapper;
|
||||
|
@ -19,6 +21,7 @@ import io.metersphere.dto.JmeterRunRequestDTO;
|
|||
import io.metersphere.dto.ProjectJarConfig;
|
||||
import io.metersphere.dto.RunModeConfigDTO;
|
||||
import io.metersphere.environment.service.BaseEnvGroupProjectService;
|
||||
import io.metersphere.environment.service.BaseEnvironmentService;
|
||||
import io.metersphere.plugin.core.MsTestElement;
|
||||
import io.metersphere.utils.LoggerUtil;
|
||||
import io.metersphere.vo.BooleanPool;
|
||||
|
@ -27,10 +30,7 @@ import org.apache.commons.lang3.StringUtils;
|
|||
import org.apache.jorphan.collections.HashTree;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
public class GenerateHashTreeUtil {
|
||||
public static MsScenario parseScenarioDefinition(String scenarioDefinition) {
|
||||
|
@ -156,6 +156,7 @@ public class GenerateHashTreeUtil {
|
|||
ParameterConfig config = new ParameterConfig(item.getProjectId(), false);
|
||||
config.setScenarioId(item.getId());
|
||||
config.setReportType(runRequest.getReportType());
|
||||
config.setConfig(getEnv(scenario.getEnvironmentMap()));
|
||||
if (runRequest.isRetryEnable() && runRequest.getRetryNum() > 0) {
|
||||
config.setRetryNum(runRequest.getRetryNum());
|
||||
}
|
||||
|
@ -172,6 +173,22 @@ public class GenerateHashTreeUtil {
|
|||
return jmeterHashTree;
|
||||
}
|
||||
|
||||
public static Map<String, EnvironmentConfig> getEnv(Map<String, String> environmentMap) {
|
||||
Map<String, EnvironmentConfig> envConfig = new HashMap<>();
|
||||
if(MapUtils.isEmpty(environmentMap)){
|
||||
return envConfig;
|
||||
}
|
||||
for (String projectId : environmentMap.keySet()) {
|
||||
BaseEnvironmentService apiTestEnvironmentService = CommonBeanFactory.getBean(BaseEnvironmentService.class);
|
||||
ApiTestEnvironmentWithBLOBs environment = apiTestEnvironmentService.get(environmentMap.get(projectId));
|
||||
if (environment != null && StringUtils.isNotEmpty(environment.getConfig())) {
|
||||
EnvironmentConfig env = JSONUtil.parseObject(environment.getConfig(), EnvironmentConfig.class);
|
||||
env.setEnvironmentId(environment.getId());
|
||||
envConfig.put(projectId, env);
|
||||
}
|
||||
}
|
||||
return envConfig;
|
||||
}
|
||||
public static boolean isSetReport(RunModeConfigDTO config) {
|
||||
return config != null && isSetReport(config.getReportType()) && StringUtils.isNotEmpty(config.getReportName());
|
||||
}
|
||||
|
|
|
@ -990,6 +990,7 @@ public class ApiScenarioService {
|
|||
if (scenario == null) {
|
||||
return null;
|
||||
}
|
||||
config.setConfig(GenerateHashTreeUtil.getEnv(scenario.getEnvironmentMap()));
|
||||
scenario.setId(apiScenario.getId());
|
||||
GenerateHashTreeUtil.parse(apiScenario.getScenarioDefinition(), scenario);
|
||||
String environmentType = apiScenario.getEnvironmentType();
|
||||
|
|
Loading…
Reference in New Issue