chore: 去掉暂时不再规划的功能
This commit is contained in:
parent
c89a858f52
commit
92a1ca5aa7
|
@ -71,7 +71,7 @@ jmeter.home=/opt/jmeter
|
||||||
spring.servlet.multipart.max-file-size=500MB
|
spring.servlet.multipart.max-file-size=500MB
|
||||||
spring.servlet.multipart.max-request-size=500MB
|
spring.servlet.multipart.max-request-size=500MB
|
||||||
# i18n
|
# i18n
|
||||||
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/load,i18n/plan,i18n/project,i18n/system,i18n/ui,i18n/workstation
|
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/plan,i18n/project,i18n/system
|
||||||
# actuator
|
# actuator
|
||||||
management.endpoints.web.exposure.include=*
|
management.endpoints.web.exposure.include=*
|
||||||
management.endpoints.enabled-by-default=false
|
management.endpoints.enabled-by-default=false
|
||||||
|
|
|
@ -40,15 +40,6 @@ public class TestResourcePool implements Serializable {
|
||||||
@Schema(description = "创建人")
|
@Schema(description = "创建人")
|
||||||
private String createUser;
|
private String createUser;
|
||||||
|
|
||||||
@Schema(description = "是否用于接口测试")
|
|
||||||
private Boolean apiTest;
|
|
||||||
|
|
||||||
@Schema(description = "是否用于性能测试")
|
|
||||||
private Boolean loadTest;
|
|
||||||
|
|
||||||
@Schema(description = "是否用于ui测试")
|
|
||||||
private Boolean uiTest;
|
|
||||||
|
|
||||||
@Schema(description = "ms部署地址")
|
@Schema(description = "ms部署地址")
|
||||||
private String serverUrl;
|
private String serverUrl;
|
||||||
|
|
||||||
|
@ -71,9 +62,6 @@ public class TestResourcePool implements Serializable {
|
||||||
createTime("create_time", "createTime", "BIGINT", false),
|
createTime("create_time", "createTime", "BIGINT", false),
|
||||||
updateTime("update_time", "updateTime", "BIGINT", false),
|
updateTime("update_time", "updateTime", "BIGINT", false),
|
||||||
createUser("create_user", "createUser", "VARCHAR", false),
|
createUser("create_user", "createUser", "VARCHAR", false),
|
||||||
apiTest("api_test", "apiTest", "BIT", false),
|
|
||||||
loadTest("load_test", "loadTest", "BIT", false),
|
|
||||||
uiTest("ui_test", "uiTest", "BIT", false),
|
|
||||||
serverUrl("server_url", "serverUrl", "VARCHAR", false),
|
serverUrl("server_url", "serverUrl", "VARCHAR", false),
|
||||||
allOrg("all_org", "allOrg", "BIT", false),
|
allOrg("all_org", "allOrg", "BIT", false),
|
||||||
deleted("deleted", "deleted", "BIT", false);
|
deleted("deleted", "deleted", "BIT", false);
|
||||||
|
|
|
@ -634,186 +634,6 @@ public class TestResourcePoolExample {
|
||||||
return (Criteria) this;
|
return (Criteria) this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Criteria andApiTestIsNull() {
|
|
||||||
addCriterion("api_test is null");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestIsNotNull() {
|
|
||||||
addCriterion("api_test is not null");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestEqualTo(Boolean value) {
|
|
||||||
addCriterion("api_test =", value, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestNotEqualTo(Boolean value) {
|
|
||||||
addCriterion("api_test <>", value, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestGreaterThan(Boolean value) {
|
|
||||||
addCriterion("api_test >", value, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestGreaterThanOrEqualTo(Boolean value) {
|
|
||||||
addCriterion("api_test >=", value, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestLessThan(Boolean value) {
|
|
||||||
addCriterion("api_test <", value, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestLessThanOrEqualTo(Boolean value) {
|
|
||||||
addCriterion("api_test <=", value, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestIn(List<Boolean> values) {
|
|
||||||
addCriterion("api_test in", values, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestNotIn(List<Boolean> values) {
|
|
||||||
addCriterion("api_test not in", values, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestBetween(Boolean value1, Boolean value2) {
|
|
||||||
addCriterion("api_test between", value1, value2, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andApiTestNotBetween(Boolean value1, Boolean value2) {
|
|
||||||
addCriterion("api_test not between", value1, value2, "apiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestIsNull() {
|
|
||||||
addCriterion("load_test is null");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestIsNotNull() {
|
|
||||||
addCriterion("load_test is not null");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestEqualTo(Boolean value) {
|
|
||||||
addCriterion("load_test =", value, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestNotEqualTo(Boolean value) {
|
|
||||||
addCriterion("load_test <>", value, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestGreaterThan(Boolean value) {
|
|
||||||
addCriterion("load_test >", value, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestGreaterThanOrEqualTo(Boolean value) {
|
|
||||||
addCriterion("load_test >=", value, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestLessThan(Boolean value) {
|
|
||||||
addCriterion("load_test <", value, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestLessThanOrEqualTo(Boolean value) {
|
|
||||||
addCriterion("load_test <=", value, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestIn(List<Boolean> values) {
|
|
||||||
addCriterion("load_test in", values, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestNotIn(List<Boolean> values) {
|
|
||||||
addCriterion("load_test not in", values, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestBetween(Boolean value1, Boolean value2) {
|
|
||||||
addCriterion("load_test between", value1, value2, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andLoadTestNotBetween(Boolean value1, Boolean value2) {
|
|
||||||
addCriterion("load_test not between", value1, value2, "loadTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestIsNull() {
|
|
||||||
addCriterion("ui_test is null");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestIsNotNull() {
|
|
||||||
addCriterion("ui_test is not null");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestEqualTo(Boolean value) {
|
|
||||||
addCriterion("ui_test =", value, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestNotEqualTo(Boolean value) {
|
|
||||||
addCriterion("ui_test <>", value, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestGreaterThan(Boolean value) {
|
|
||||||
addCriterion("ui_test >", value, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestGreaterThanOrEqualTo(Boolean value) {
|
|
||||||
addCriterion("ui_test >=", value, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestLessThan(Boolean value) {
|
|
||||||
addCriterion("ui_test <", value, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestLessThanOrEqualTo(Boolean value) {
|
|
||||||
addCriterion("ui_test <=", value, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestIn(List<Boolean> values) {
|
|
||||||
addCriterion("ui_test in", values, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestNotIn(List<Boolean> values) {
|
|
||||||
addCriterion("ui_test not in", values, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestBetween(Boolean value1, Boolean value2) {
|
|
||||||
addCriterion("ui_test between", value1, value2, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andUiTestNotBetween(Boolean value1, Boolean value2) {
|
|
||||||
addCriterion("ui_test not between", value1, value2, "uiTest");
|
|
||||||
return (Criteria) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Criteria andServerUrlIsNull() {
|
public Criteria andServerUrlIsNull() {
|
||||||
addCriterion("server_url is null");
|
addCriterion("server_url is null");
|
||||||
return (Criteria) this;
|
return (Criteria) this;
|
||||||
|
|
|
@ -10,9 +10,6 @@
|
||||||
<result column="create_time" jdbcType="BIGINT" property="createTime" />
|
<result column="create_time" jdbcType="BIGINT" property="createTime" />
|
||||||
<result column="update_time" jdbcType="BIGINT" property="updateTime" />
|
<result column="update_time" jdbcType="BIGINT" property="updateTime" />
|
||||||
<result column="create_user" jdbcType="VARCHAR" property="createUser" />
|
<result column="create_user" jdbcType="VARCHAR" property="createUser" />
|
||||||
<result column="api_test" jdbcType="BIT" property="apiTest" />
|
|
||||||
<result column="load_test" jdbcType="BIT" property="loadTest" />
|
|
||||||
<result column="ui_test" jdbcType="BIT" property="uiTest" />
|
|
||||||
<result column="server_url" jdbcType="VARCHAR" property="serverUrl" />
|
<result column="server_url" jdbcType="VARCHAR" property="serverUrl" />
|
||||||
<result column="all_org" jdbcType="BIT" property="allOrg" />
|
<result column="all_org" jdbcType="BIT" property="allOrg" />
|
||||||
<result column="deleted" jdbcType="BIT" property="deleted" />
|
<result column="deleted" jdbcType="BIT" property="deleted" />
|
||||||
|
@ -77,7 +74,7 @@
|
||||||
</sql>
|
</sql>
|
||||||
<sql id="Base_Column_List">
|
<sql id="Base_Column_List">
|
||||||
id, `name`, `type`, description, `enable`, create_time, update_time, create_user,
|
id, `name`, `type`, description, `enable`, create_time, update_time, create_user,
|
||||||
api_test, load_test, ui_test, server_url, all_org, deleted
|
server_url, all_org, deleted
|
||||||
</sql>
|
</sql>
|
||||||
<select id="selectByExample" parameterType="io.metersphere.system.domain.TestResourcePoolExample" resultMap="BaseResultMap">
|
<select id="selectByExample" parameterType="io.metersphere.system.domain.TestResourcePoolExample" resultMap="BaseResultMap">
|
||||||
select
|
select
|
||||||
|
@ -112,13 +109,11 @@
|
||||||
<insert id="insert" parameterType="io.metersphere.system.domain.TestResourcePool">
|
<insert id="insert" parameterType="io.metersphere.system.domain.TestResourcePool">
|
||||||
insert into test_resource_pool (id, `name`, `type`,
|
insert into test_resource_pool (id, `name`, `type`,
|
||||||
description, `enable`, create_time,
|
description, `enable`, create_time,
|
||||||
update_time, create_user, api_test,
|
update_time, create_user, server_url,
|
||||||
load_test, ui_test, server_url,
|
|
||||||
all_org, deleted)
|
all_org, deleted)
|
||||||
values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR},
|
values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR},
|
||||||
#{description,jdbcType=VARCHAR}, #{enable,jdbcType=BIT}, #{createTime,jdbcType=BIGINT},
|
#{description,jdbcType=VARCHAR}, #{enable,jdbcType=BIT}, #{createTime,jdbcType=BIGINT},
|
||||||
#{updateTime,jdbcType=BIGINT}, #{createUser,jdbcType=VARCHAR}, #{apiTest,jdbcType=BIT},
|
#{updateTime,jdbcType=BIGINT}, #{createUser,jdbcType=VARCHAR}, #{serverUrl,jdbcType=VARCHAR},
|
||||||
#{loadTest,jdbcType=BIT}, #{uiTest,jdbcType=BIT}, #{serverUrl,jdbcType=VARCHAR},
|
|
||||||
#{allOrg,jdbcType=BIT}, #{deleted,jdbcType=BIT})
|
#{allOrg,jdbcType=BIT}, #{deleted,jdbcType=BIT})
|
||||||
</insert>
|
</insert>
|
||||||
<insert id="insertSelective" parameterType="io.metersphere.system.domain.TestResourcePool">
|
<insert id="insertSelective" parameterType="io.metersphere.system.domain.TestResourcePool">
|
||||||
|
@ -148,15 +143,6 @@
|
||||||
<if test="createUser != null">
|
<if test="createUser != null">
|
||||||
create_user,
|
create_user,
|
||||||
</if>
|
</if>
|
||||||
<if test="apiTest != null">
|
|
||||||
api_test,
|
|
||||||
</if>
|
|
||||||
<if test="loadTest != null">
|
|
||||||
load_test,
|
|
||||||
</if>
|
|
||||||
<if test="uiTest != null">
|
|
||||||
ui_test,
|
|
||||||
</if>
|
|
||||||
<if test="serverUrl != null">
|
<if test="serverUrl != null">
|
||||||
server_url,
|
server_url,
|
||||||
</if>
|
</if>
|
||||||
|
@ -192,15 +178,6 @@
|
||||||
<if test="createUser != null">
|
<if test="createUser != null">
|
||||||
#{createUser,jdbcType=VARCHAR},
|
#{createUser,jdbcType=VARCHAR},
|
||||||
</if>
|
</if>
|
||||||
<if test="apiTest != null">
|
|
||||||
#{apiTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="loadTest != null">
|
|
||||||
#{loadTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="uiTest != null">
|
|
||||||
#{uiTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="serverUrl != null">
|
<if test="serverUrl != null">
|
||||||
#{serverUrl,jdbcType=VARCHAR},
|
#{serverUrl,jdbcType=VARCHAR},
|
||||||
</if>
|
</if>
|
||||||
|
@ -245,15 +222,6 @@
|
||||||
<if test="record.createUser != null">
|
<if test="record.createUser != null">
|
||||||
create_user = #{record.createUser,jdbcType=VARCHAR},
|
create_user = #{record.createUser,jdbcType=VARCHAR},
|
||||||
</if>
|
</if>
|
||||||
<if test="record.apiTest != null">
|
|
||||||
api_test = #{record.apiTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="record.loadTest != null">
|
|
||||||
load_test = #{record.loadTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="record.uiTest != null">
|
|
||||||
ui_test = #{record.uiTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="record.serverUrl != null">
|
<if test="record.serverUrl != null">
|
||||||
server_url = #{record.serverUrl,jdbcType=VARCHAR},
|
server_url = #{record.serverUrl,jdbcType=VARCHAR},
|
||||||
</if>
|
</if>
|
||||||
|
@ -278,9 +246,6 @@
|
||||||
create_time = #{record.createTime,jdbcType=BIGINT},
|
create_time = #{record.createTime,jdbcType=BIGINT},
|
||||||
update_time = #{record.updateTime,jdbcType=BIGINT},
|
update_time = #{record.updateTime,jdbcType=BIGINT},
|
||||||
create_user = #{record.createUser,jdbcType=VARCHAR},
|
create_user = #{record.createUser,jdbcType=VARCHAR},
|
||||||
api_test = #{record.apiTest,jdbcType=BIT},
|
|
||||||
load_test = #{record.loadTest,jdbcType=BIT},
|
|
||||||
ui_test = #{record.uiTest,jdbcType=BIT},
|
|
||||||
server_url = #{record.serverUrl,jdbcType=VARCHAR},
|
server_url = #{record.serverUrl,jdbcType=VARCHAR},
|
||||||
all_org = #{record.allOrg,jdbcType=BIT},
|
all_org = #{record.allOrg,jdbcType=BIT},
|
||||||
deleted = #{record.deleted,jdbcType=BIT}
|
deleted = #{record.deleted,jdbcType=BIT}
|
||||||
|
@ -312,15 +277,6 @@
|
||||||
<if test="createUser != null">
|
<if test="createUser != null">
|
||||||
create_user = #{createUser,jdbcType=VARCHAR},
|
create_user = #{createUser,jdbcType=VARCHAR},
|
||||||
</if>
|
</if>
|
||||||
<if test="apiTest != null">
|
|
||||||
api_test = #{apiTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="loadTest != null">
|
|
||||||
load_test = #{loadTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="uiTest != null">
|
|
||||||
ui_test = #{uiTest,jdbcType=BIT},
|
|
||||||
</if>
|
|
||||||
<if test="serverUrl != null">
|
<if test="serverUrl != null">
|
||||||
server_url = #{serverUrl,jdbcType=VARCHAR},
|
server_url = #{serverUrl,jdbcType=VARCHAR},
|
||||||
</if>
|
</if>
|
||||||
|
@ -342,9 +298,6 @@
|
||||||
create_time = #{createTime,jdbcType=BIGINT},
|
create_time = #{createTime,jdbcType=BIGINT},
|
||||||
update_time = #{updateTime,jdbcType=BIGINT},
|
update_time = #{updateTime,jdbcType=BIGINT},
|
||||||
create_user = #{createUser,jdbcType=VARCHAR},
|
create_user = #{createUser,jdbcType=VARCHAR},
|
||||||
api_test = #{apiTest,jdbcType=BIT},
|
|
||||||
load_test = #{loadTest,jdbcType=BIT},
|
|
||||||
ui_test = #{uiTest,jdbcType=BIT},
|
|
||||||
server_url = #{serverUrl,jdbcType=VARCHAR},
|
server_url = #{serverUrl,jdbcType=VARCHAR},
|
||||||
all_org = #{allOrg,jdbcType=BIT},
|
all_org = #{allOrg,jdbcType=BIT},
|
||||||
deleted = #{deleted,jdbcType=BIT}
|
deleted = #{deleted,jdbcType=BIT}
|
||||||
|
@ -353,13 +306,12 @@
|
||||||
<insert id="batchInsert" parameterType="map">
|
<insert id="batchInsert" parameterType="map">
|
||||||
insert into test_resource_pool
|
insert into test_resource_pool
|
||||||
(id, `name`, `type`, description, `enable`, create_time, update_time, create_user,
|
(id, `name`, `type`, description, `enable`, create_time, update_time, create_user,
|
||||||
api_test, load_test, ui_test, server_url, all_org, deleted)
|
server_url, all_org, deleted)
|
||||||
values
|
values
|
||||||
<foreach collection="list" item="item" separator=",">
|
<foreach collection="list" item="item" separator=",">
|
||||||
(#{item.id,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR},
|
(#{item.id,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR},
|
||||||
#{item.description,jdbcType=VARCHAR}, #{item.enable,jdbcType=BIT}, #{item.createTime,jdbcType=BIGINT},
|
#{item.description,jdbcType=VARCHAR}, #{item.enable,jdbcType=BIT}, #{item.createTime,jdbcType=BIGINT},
|
||||||
#{item.updateTime,jdbcType=BIGINT}, #{item.createUser,jdbcType=VARCHAR}, #{item.apiTest,jdbcType=BIT},
|
#{item.updateTime,jdbcType=BIGINT}, #{item.createUser,jdbcType=VARCHAR}, #{item.serverUrl,jdbcType=VARCHAR},
|
||||||
#{item.loadTest,jdbcType=BIT}, #{item.uiTest,jdbcType=BIT}, #{item.serverUrl,jdbcType=VARCHAR},
|
|
||||||
#{item.allOrg,jdbcType=BIT}, #{item.deleted,jdbcType=BIT})
|
#{item.allOrg,jdbcType=BIT}, #{item.deleted,jdbcType=BIT})
|
||||||
</foreach>
|
</foreach>
|
||||||
</insert>
|
</insert>
|
||||||
|
@ -397,15 +349,6 @@
|
||||||
<if test="'create_user'.toString() == column.value">
|
<if test="'create_user'.toString() == column.value">
|
||||||
#{item.createUser,jdbcType=VARCHAR}
|
#{item.createUser,jdbcType=VARCHAR}
|
||||||
</if>
|
</if>
|
||||||
<if test="'api_test'.toString() == column.value">
|
|
||||||
#{item.apiTest,jdbcType=BIT}
|
|
||||||
</if>
|
|
||||||
<if test="'load_test'.toString() == column.value">
|
|
||||||
#{item.loadTest,jdbcType=BIT}
|
|
||||||
</if>
|
|
||||||
<if test="'ui_test'.toString() == column.value">
|
|
||||||
#{item.uiTest,jdbcType=BIT}
|
|
||||||
</if>
|
|
||||||
<if test="'server_url'.toString() == column.value">
|
<if test="'server_url'.toString() == column.value">
|
||||||
#{item.serverUrl,jdbcType=VARCHAR}
|
#{item.serverUrl,jdbcType=VARCHAR}
|
||||||
</if>
|
</if>
|
||||||
|
|
|
@ -21,6 +21,10 @@ ALTER TABLE operation_log MODIFY COLUMN module VARCHAR(100);
|
||||||
|
|
||||||
CREATE INDEX idx_num ON test_plan_functional_case(num);
|
CREATE INDEX idx_num ON test_plan_functional_case(num);
|
||||||
|
|
||||||
|
ALTER TABLE test_resource_pool DROP COLUMN api_test;
|
||||||
|
ALTER TABLE test_resource_pool DROP COLUMN load_test;
|
||||||
|
ALTER TABLE test_resource_pool DROP COLUMN ui_test;
|
||||||
|
|
||||||
-- set innodb lock wait timeout to default
|
-- set innodb lock wait timeout to default
|
||||||
SET SESSION innodb_lock_wait_timeout = DEFAULT;
|
SET SESSION innodb_lock_wait_timeout = DEFAULT;
|
||||||
|
|
||||||
|
|
|
@ -7,11 +7,6 @@ import java.util.Arrays;
|
||||||
*/
|
*/
|
||||||
public class ProjectApplicationType {
|
public class ProjectApplicationType {
|
||||||
|
|
||||||
//工作台
|
|
||||||
public enum WORKSTATION {
|
|
||||||
WORKSTATION_SYNC_RULE
|
|
||||||
}
|
|
||||||
|
|
||||||
//测试计划
|
//测试计划
|
||||||
public enum TEST_PLAN {
|
public enum TEST_PLAN {
|
||||||
TEST_PLAN_CLEAN_REPORT,
|
TEST_PLAN_CLEAN_REPORT,
|
||||||
|
@ -19,25 +14,6 @@ public class ProjectApplicationType {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//UI测试
|
|
||||||
public enum UI {
|
|
||||||
UI_CLEAN_REPORT,
|
|
||||||
UI_SHARE_REPORT,
|
|
||||||
UI_RESOURCE_POOL_ID,
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//性能测试
|
|
||||||
public enum LOAD_TEST {
|
|
||||||
LOAD_TEST_CLEAN_REPORT,
|
|
||||||
LOAD_TEST_SHARE_REPORT,
|
|
||||||
LOAD_TEST_SCRIPT_REVIEWER_ENABLE,
|
|
||||||
LOAD_TEST_SCRIPT_REVIEWER_ID,
|
|
||||||
LOAD_TEST_RESOURCE_POOL_ID
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//接口测试
|
//接口测试
|
||||||
public enum API {
|
public enum API {
|
||||||
API_URL_REPEATABLE,
|
API_URL_REPEATABLE,
|
||||||
|
|
|
@ -2,5 +2,5 @@ package io.metersphere.sdk.constants;
|
||||||
|
|
||||||
|
|
||||||
public enum TaskCenterResourceType {
|
public enum TaskCenterResourceType {
|
||||||
API_CASE, API_SCENARIO, UI_TEST, LOAD_TEST, TEST_PLAN
|
API_CASE, API_SCENARIO, TEST_PLAN
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,72 +0,0 @@
|
||||||
load_test_report.id.not_blank=性能测试报告ID不能为空
|
|
||||||
load_test_report.test_id.length_range=性能测试ID长度范围为{min}到{max}
|
|
||||||
load_test_report.test_id.not_blank=性能测试ID不能为空
|
|
||||||
load_test_report.name.length_range=性能测试报告名称长度范围为{min}到{max}
|
|
||||||
load_test_report.name.not_blank=性能测试报告名称不能为空
|
|
||||||
load_test_report.status.length_range=性能测试报告状态长度范围为{min}到{max}
|
|
||||||
load_test_report.status.not_blank=性能测试报告状态不能为空
|
|
||||||
load_test_report.create_user.length_range=性能测试报告创建人长度范围为{min}到{max}
|
|
||||||
load_test_report.create_user.not_blank=性能测试报告创建人不能为空
|
|
||||||
load_test_report.trigger_mode.length_range=性能测试报告触发方式长度范围为{min}到{max}
|
|
||||||
load_test_report.trigger_mode.not_blank=性能测试报告触发方式不能为空
|
|
||||||
load_test_report.project_id.length_range=性能测试报告项目ID长度范围为{min}到{max}
|
|
||||||
load_test_report.project_id.not_blank=性能测试报告项目ID不能为空
|
|
||||||
load_test_report.test_name.length_range=性能测试报告测试名称长度范围为{min}到{max}
|
|
||||||
load_test_report.test_name.not_blank=性能测试报告测试名称不能为空
|
|
||||||
load_test_report.test_resource_pool_id.length_range=性能测试报告测试资源池ID长度范围为{min}到{max}
|
|
||||||
load_test_report.test_resource_pool_id.not_blank=性能测试报告测试资源池ID不能为空
|
|
||||||
load_test_report.version_id.length_range=性能测试报告版本ID长度范围为{min}到{max}
|
|
||||||
load_test_report.version_id.not_blank=性能测试报告版本ID不能为空
|
|
||||||
load_test_report_result.id.not_blank=性能测试报告结果ID不能为空
|
|
||||||
load_test_report_result.report_id.length_range=性能测试报告结果报告ID长度范围为{min}到{max}
|
|
||||||
load_test_report_result.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_follower.test_id.length_range=性能测试ID长度范围为{min}到{max}
|
|
||||||
load_test_follower.test_id.not_blank=性能测试ID不能为空
|
|
||||||
load_test_follower.user_id.length_range=性能测试关注ID长度范围为{min}到{max}
|
|
||||||
load_test_follower.user_id.not_blank=性能测试关注ID不能为空
|
|
||||||
load_test_report_result_part.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_report_result_part.report_key.not_blank=性能测试报告结果报告KEY不能为空
|
|
||||||
load_test_report_result_part.resource_index.not_blank=性能测试报告结果资源索引不能为空
|
|
||||||
load_test.id.not_blank=性能测试ID不能为空
|
|
||||||
load_test.project_id.length_range=性能测试项目ID长度范围为{min}到{max}
|
|
||||||
load_test.project_id.not_blank=性能测试项目ID不能为空
|
|
||||||
load_test.name.length_range=性能测试名称长度范围为{min}到{max}
|
|
||||||
load_test.name.not_blank=性能测试名称不能为空
|
|
||||||
load_test.status.length_range=性能测试状态长度范围为{min}到{max}
|
|
||||||
load_test.status.not_blank=性能测试状态不能为空
|
|
||||||
load_test.test_resource_pool_id.length_range=性能测试资源池ID长度范围为{min}到{max}
|
|
||||||
load_test.test_resource_pool_id.not_blank=性能测试资源池ID不能为空
|
|
||||||
load_test.create_user.length_range=性能测试创建人长度范围为{min}到{max}
|
|
||||||
load_test.create_user.not_blank=性能测试创建人不能为空
|
|
||||||
load_test.version_id.length_range=性能测试版本ID长度范围为{min}到{max}
|
|
||||||
load_test.version_id.not_blank=性能测试版本ID不能为空
|
|
||||||
load_test.ref_id.length_range=性能测试关联ID长度范围为{min}到{max}
|
|
||||||
load_test.ref_id.not_blank=性能测试关联ID不能为空
|
|
||||||
load_test.latest.length_range=性能测试是否为最新版本长度范围为{min}到{max}
|
|
||||||
load_test.latest.not_blank=性能测试是否为最新版本不能为空
|
|
||||||
load_test_report_blob.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_api.id.not_blank=性能测试接口ID不能为空
|
|
||||||
load_test_api.api_id.length_range=性能测试接口ID长度范围为{min}到{max}
|
|
||||||
load_test_api.api_id.not_blank=性能测试接口ID不能为空
|
|
||||||
load_test_api.load_test_id.length_range=性能测试接口性能测试ID长度范围为{min}到{max}
|
|
||||||
load_test_api.load_test_id.not_blank=性能测试接口性能测试ID不能为空
|
|
||||||
load_test_api.type.length_range=性能测试接口类型长度范围为{min}到{max}
|
|
||||||
load_test_api.type.not_blank=性能测试接口类型不能为空
|
|
||||||
load_test_report_file.report_id.length_range=性能测试报告结果报告ID长度范围为{min}到{max}
|
|
||||||
load_test_report_file.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_report_file.file_id.length_range=性能测试报告结果文件ID长度范围为{min}到{max}
|
|
||||||
load_test_report_file.file_id.not_blank=性能测试报告结果文件ID不能为空
|
|
||||||
load_test_report_result_realtime.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_report_result_realtime.report_key.not_blank=性能测试报告结果报告KEY不能为空
|
|
||||||
load_test_report_result_realtime.resource_index.not_blank=性能测试报告结果资源索引不能为空
|
|
||||||
load_test_report_result_realtime.sort.not_blank=性能测试报告结果排序不能为空
|
|
||||||
load_test_file.test_id.length_range=性能测试文件ID长度范围为{min}到{max}
|
|
||||||
load_test_file.test_id.not_blank=性能测试文件ID不能为空
|
|
||||||
load_test_file.file_id.length_range=性能测试文件文件ID长度范围为{min}到{max}
|
|
||||||
load_test_file.file_id.not_blank=性能测试文件文件ID不能为空
|
|
||||||
load_test_blob.test_id.not_blank=性能测试二进制文件ID不能为空
|
|
||||||
load_test_report_log.id.not_blank=性能测试报告日志ID不能为空
|
|
||||||
load_test_report_log.report_id.length_range=性能测试报告日志报告ID长度范围为{min}到{max}
|
|
||||||
load_test_report_log.report_id.not_blank=性能测试报告日志报告ID不能为空
|
|
||||||
load_test_report_log.resource_id.length_range=性能测试报告日志资源ID长度范围为{min}到{max}
|
|
||||||
load_test_report_log.resource_id.not_blank=性能测试报告日志资源ID不能为空
|
|
|
@ -1,72 +0,0 @@
|
||||||
load_test_report.id.not_blank=Load Test Report ID is required
|
|
||||||
load_test_report.test_id.length_range=Load Test ID must be between {min} and {max} characters
|
|
||||||
load_test_report.test_id.not_blank=Load Test ID is required
|
|
||||||
load_test_report.name.length_range=Load Test Report Name must be between {min} and {max} characters
|
|
||||||
load_test_report.name.not_blank=Load Test Report Name is required
|
|
||||||
load_test_report.status.length_range=Load Test Report Status must be between {min} and {max} characters
|
|
||||||
load_test_report.status.not_blank=Load Test Report Status is required
|
|
||||||
load_test_report.create_user.length_range=Load Test Report Create User must be between {min} and {max} characters
|
|
||||||
load_test_report.create_user.not_blank=Load Test Report Create User is required
|
|
||||||
load_test_report.trigger_mode.length_range=Load Test Report Trigger Mode must be between {min} and {max} characters
|
|
||||||
load_test_report.trigger_mode.not_blank=Load Test Report Trigger Mode is required
|
|
||||||
load_test_report.project_id.length_range=Load Test Report Project ID must be between {min} and {max} characters
|
|
||||||
load_test_report.project_id.not_blank=Load Test Report Project ID is required
|
|
||||||
load_test_report.test_name.length_range=Load Test Report Test Name must be between {min} and {max} characters
|
|
||||||
load_test_report.test_name.not_blank=Load Test Report Test Name is required
|
|
||||||
load_test_report.test_resource_pool_id.length_range=Load Test Report Test Resource Pool ID must be between {min} and {max} characters
|
|
||||||
load_test_report.test_resource_pool_id.not_blank=Load Test Report Test Resource Pool ID is required
|
|
||||||
load_test_report.version_id.length_range=Load Test Report Version ID must be between {min} and {max} characters
|
|
||||||
load_test_report.version_id.not_blank=Load Test Report Version ID is required
|
|
||||||
load_test_report_result.id.not_blank=Load Test Report Result ID is required
|
|
||||||
load_test_report_result.report_id.length_range=Load Test Report Result Report ID must be between {min} and {max} characters
|
|
||||||
load_test_report_result.report_id.not_blank=Load Test Report Result Report ID is required
|
|
||||||
load_test_follower.test_id.length_range=Load Test Follow Test ID must be between {min} and {max} characters
|
|
||||||
load_test_follower.test_id.not_blank=Load Test Follow Test ID is required
|
|
||||||
load_test_follower.user_id.length_range=Load Test Follow ID must be between {min} and {max} characters
|
|
||||||
load_test_follower.user_id.not_blank=Load Test Follow ID is required
|
|
||||||
load_test_report_result_part.report_id.not_blank=Load Test Report Result Part Report ID is required
|
|
||||||
load_test_report_result_part.report_key.not_blank=Load Test Report Result Part Report Key is required
|
|
||||||
load_test_report_result_part.resource_index.not_blank=Load Test Report Result Part Resource Index is required
|
|
||||||
load_test.id.not_blank=Load Test ID is required
|
|
||||||
load_test.project_id.length_range=Load Test Project ID must be between {min} and {max} characters
|
|
||||||
load_test.project_id.not_blank=Load Test Project ID is required
|
|
||||||
load_test.name.length_range=Load Test Name must be between {min} and {max} characters
|
|
||||||
load_test.name.not_blank=Load Test Name is required
|
|
||||||
load_test.status.length_range=Load Test Status must be between {min} and {max} characters
|
|
||||||
load_test.status.not_blank=Load Test Status is required
|
|
||||||
load_test.test_resource_pool_id.length_range=Load Test Resource Pool ID must be between {min} and {max} characters
|
|
||||||
load_test.test_resource_pool_id.not_blank=Load Test Resource Pool ID is required
|
|
||||||
load_test.create_user.length_range=Load Test Create User must be between {min} and {max} characters
|
|
||||||
load_test.create_user.not_blank=Load Test Create User is required
|
|
||||||
load_test.version_id.length_range=Load Test Version ID must be between {min} and {max} characters
|
|
||||||
load_test.version_id.not_blank=Load Test Version ID is required
|
|
||||||
load_test.ref_id.length_range=Load Test Ref ID must be between {min} and {max} characters
|
|
||||||
load_test.ref_id.not_blank=Load Test Ref ID is required
|
|
||||||
load_test.latest.length_range=Load Test Latest must be between {min} and {max} characters
|
|
||||||
load_test.latest.not_blank=Load Test Latest is required
|
|
||||||
load_test_report_blob.report_id.not_blank=Load Test Report Blob Report ID is required
|
|
||||||
load_test_api.id.not_blank=Load Test API ID is required
|
|
||||||
load_test_api.api_id.length_range=Load Test API ID must be between {min} and {max} characters
|
|
||||||
load_test_api.api_id.not_blank=Load Test API ID is required
|
|
||||||
load_test_api.load_test_id.length_range=Load Test API Load Test ID must be between {min} and {max} characters
|
|
||||||
load_test_api.load_test_id.not_blank=Load Test API Load Test ID is required
|
|
||||||
load_test_api.type.length_range=Load Test API Type must be between {min} and {max} characters
|
|
||||||
load_test_api.type.not_blank=Load Test API Type is required
|
|
||||||
load_test_report_file.report_id.length_range=Load Test Report File Report ID must be between {min} and {max} characters
|
|
||||||
load_test_report_file.report_id.not_blank=Load Test Report File Report ID is required
|
|
||||||
load_test_report_file.file_id.length_range=Load Test Report File ID must be between {min} and {max} characters
|
|
||||||
load_test_report_file.file_id.not_blank=Load Test Report File ID is required
|
|
||||||
load_test_report_result_realtime.report_id.not_blank=Load Test Report Result Realtime Report ID is required
|
|
||||||
load_test_report_result_realtime.report_key.not_blank=Load Test Report Result Realtime Report Key is required
|
|
||||||
load_test_report_result_realtime.resource_index.not_blank=Load Test Report Result Realtime Resource Index is required
|
|
||||||
load_test_report_result_realtime.sort.not_blank=Load Test Report Result Realtime Sort is required
|
|
||||||
load_test_file.test_id.length_range=Load Test File Test ID must be between {min} and {max} characters
|
|
||||||
load_test_file.test_id.not_blank=Load Test File Test ID is required
|
|
||||||
load_test_file.file_id.length_range=Load Test File ID must be between {min} and {max} characters
|
|
||||||
load_test_file.file_id.not_blank=Load Test File ID is required
|
|
||||||
load_test_blob.test_id.not_blank=Load Test Blob Test ID is required
|
|
||||||
load_test_report_log.id.not_blank=Load Test Report Log ID is required
|
|
||||||
load_test_report_log.report_id.length_range=Load Test Report Log Report ID must be between {min} and {max} characters
|
|
||||||
load_test_report_log.report_id.not_blank=Load Test Report Log Report ID is required
|
|
||||||
load_test_report_log.resource_id.length_range=Load Test Report Log Resource ID must be between {min} and {max} characters
|
|
||||||
load_test_report_log.resource_id.not_blank=Load Test Report Log Resource ID is required
|
|
|
@ -1,72 +0,0 @@
|
||||||
load_test_report.id.not_blank=性能测试报告ID不能为空
|
|
||||||
load_test_report.test_id.length_range=性能测试ID长度范围为{min}到{max}
|
|
||||||
load_test_report.test_id.not_blank=性能测试ID不能为空
|
|
||||||
load_test_report.name.length_range=性能测试报告名称长度范围为{min}到{max}
|
|
||||||
load_test_report.name.not_blank=性能测试报告名称不能为空
|
|
||||||
load_test_report.status.length_range=性能测试报告状态长度范围为{min}到{max}
|
|
||||||
load_test_report.status.not_blank=性能测试报告状态不能为空
|
|
||||||
load_test_report.create_user.length_range=性能测试报告创建人长度范围为{min}到{max}
|
|
||||||
load_test_report.create_user.not_blank=性能测试报告创建人不能为空
|
|
||||||
load_test_report.trigger_mode.length_range=性能测试报告触发方式长度范围为{min}到{max}
|
|
||||||
load_test_report.trigger_mode.not_blank=性能测试报告触发方式不能为空
|
|
||||||
load_test_report.project_id.length_range=性能测试报告项目ID长度范围为{min}到{max}
|
|
||||||
load_test_report.project_id.not_blank=性能测试报告项目ID不能为空
|
|
||||||
load_test_report.test_name.length_range=性能测试报告测试名称长度范围为{min}到{max}
|
|
||||||
load_test_report.test_name.not_blank=性能测试报告测试名称不能为空
|
|
||||||
load_test_report.test_resource_pool_id.length_range=性能测试报告测试资源池ID长度范围为{min}到{max}
|
|
||||||
load_test_report.test_resource_pool_id.not_blank=性能测试报告测试资源池ID不能为空
|
|
||||||
load_test_report.version_id.length_range=性能测试报告版本ID长度范围为{min}到{max}
|
|
||||||
load_test_report.version_id.not_blank=性能测试报告版本ID不能为空
|
|
||||||
load_test_report_result.id.not_blank=性能测试报告结果ID不能为空
|
|
||||||
load_test_report_result.report_id.length_range=性能测试报告结果报告ID长度范围为{min}到{max}
|
|
||||||
load_test_report_result.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_follower.test_id.length_range=性能测试ID长度范围为{min}到{max}
|
|
||||||
load_test_follower.test_id.not_blank=性能测试ID不能为空
|
|
||||||
load_test_follower.user_id.length_range=性能测试关注ID长度范围为{min}到{max}
|
|
||||||
load_test_follower.user_id.not_blank=性能测试关注ID不能为空
|
|
||||||
load_test_report_result_part.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_report_result_part.report_key.not_blank=性能测试报告结果报告KEY不能为空
|
|
||||||
load_test_report_result_part.resource_index.not_blank=性能测试报告结果资源索引不能为空
|
|
||||||
load_test.id.not_blank=性能测试ID不能为空
|
|
||||||
load_test.project_id.length_range=性能测试项目ID长度范围为{min}到{max}
|
|
||||||
load_test.project_id.not_blank=性能测试项目ID不能为空
|
|
||||||
load_test.name.length_range=性能测试名称长度范围为{min}到{max}
|
|
||||||
load_test.name.not_blank=性能测试名称不能为空
|
|
||||||
load_test.status.length_range=性能测试状态长度范围为{min}到{max}
|
|
||||||
load_test.status.not_blank=性能测试状态不能为空
|
|
||||||
load_test.test_resource_pool_id.length_range=性能测试资源池ID长度范围为{min}到{max}
|
|
||||||
load_test.test_resource_pool_id.not_blank=性能测试资源池ID不能为空
|
|
||||||
load_test.create_user.length_range=性能测试创建人长度范围为{min}到{max}
|
|
||||||
load_test.create_user.not_blank=性能测试创建人不能为空
|
|
||||||
load_test.version_id.length_range=性能测试版本ID长度范围为{min}到{max}
|
|
||||||
load_test.version_id.not_blank=性能测试版本ID不能为空
|
|
||||||
load_test.ref_id.length_range=性能测试关联ID长度范围为{min}到{max}
|
|
||||||
load_test.ref_id.not_blank=性能测试关联ID不能为空
|
|
||||||
load_test.latest.length_range=性能测试是否为最新版本长度范围为{min}到{max}
|
|
||||||
load_test.latest.not_blank=性能测试是否为最新版本不能为空
|
|
||||||
load_test_report_blob.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_api.id.not_blank=性能测试接口ID不能为空
|
|
||||||
load_test_api.api_id.length_range=性能测试接口ID长度范围为{min}到{max}
|
|
||||||
load_test_api.api_id.not_blank=性能测试接口ID不能为空
|
|
||||||
load_test_api.load_test_id.length_range=性能测试接口性能测试ID长度范围为{min}到{max}
|
|
||||||
load_test_api.load_test_id.not_blank=性能测试接口性能测试ID不能为空
|
|
||||||
load_test_api.type.length_range=性能测试接口类型长度范围为{min}到{max}
|
|
||||||
load_test_api.type.not_blank=性能测试接口类型不能为空
|
|
||||||
load_test_report_file.report_id.length_range=性能测试报告结果报告ID长度范围为{min}到{max}
|
|
||||||
load_test_report_file.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_report_file.file_id.length_range=性能测试报告结果文件ID长度范围为{min}到{max}
|
|
||||||
load_test_report_file.file_id.not_blank=性能测试报告结果文件ID不能为空
|
|
||||||
load_test_report_result_realtime.report_id.not_blank=性能测试报告结果报告ID不能为空
|
|
||||||
load_test_report_result_realtime.report_key.not_blank=性能测试报告结果报告KEY不能为空
|
|
||||||
load_test_report_result_realtime.resource_index.not_blank=性能测试报告结果资源索引不能为空
|
|
||||||
load_test_report_result_realtime.sort.not_blank=性能测试报告结果排序不能为空
|
|
||||||
load_test_file.test_id.length_range=性能测试文件ID长度范围为{min}到{max}
|
|
||||||
load_test_file.test_id.not_blank=性能测试文件ID不能为空
|
|
||||||
load_test_file.file_id.length_range=性能测试文件文件ID长度范围为{min}到{max}
|
|
||||||
load_test_file.file_id.not_blank=性能测试文件文件ID不能为空
|
|
||||||
load_test_blob.test_id.not_blank=性能测试二进制文件ID不能为空
|
|
||||||
load_test_report_log.id.not_blank=性能测试报告日志ID不能为空
|
|
||||||
load_test_report_log.report_id.length_range=性能测试报告日志报告ID长度范围为{min}到{max}
|
|
||||||
load_test_report_log.report_id.not_blank=性能测试报告日志报告ID不能为空
|
|
||||||
load_test_report_log.resource_id.length_range=性能测试报告日志资源ID长度范围为{min}到{max}
|
|
||||||
load_test_report_log.resource_id.not_blank=性能测试报告日志资源ID不能为空
|
|
|
@ -1,72 +0,0 @@
|
||||||
load_test_report.id.not_blank=性能測試報告ID不能為空
|
|
||||||
load_test_report.test_id.length_range=性能測試ID長度範圍為{min}到{max}
|
|
||||||
load_test_report.test_id.not_blank=性能測試ID不能為空
|
|
||||||
load_test_report.name.length_range=性能測試報告名稱長度範圍為{min}到{max}
|
|
||||||
load_test_report.name.not_blank=性能測試報告名稱不能為空
|
|
||||||
load_test_report.status.length_range=性能測試報告狀態長度範圍為{min}到{max}
|
|
||||||
load_test_report.status.not_blank=性能測試報告狀態不能為空
|
|
||||||
load_test_report.create_user.length_range=性能測試報告創建人長度範圍為{min}到{max}
|
|
||||||
load_test_report.create_user.not_blank=性能測試報告創建人不能為空
|
|
||||||
load_test_report.trigger_mode.length_range=性能測試報告觸發方式長度範圍為{min}到{max}
|
|
||||||
load_test_report.trigger_mode.not_blank=性能測試報告觸發方式不能為空
|
|
||||||
load_test_report.project_id.length_range=性能測試報告項目ID長度範圍為{min}到{max}
|
|
||||||
load_test_report.project_id.not_blank=性能測試報告項目ID不能為空
|
|
||||||
load_test_report.test_name.length_range=性能測試報告測試名稱長度範圍為{min}到{max}
|
|
||||||
load_test_report.test_name.not_blank=性能測試報告測試名稱不能為空
|
|
||||||
load_test_report.test_resource_pool_id.length_range=性能測試報告測試資源池ID長度範圍為{min}到{max}
|
|
||||||
load_test_report.test_resource_pool_id.not_blank=性能測試報告測試資源池ID不能為空
|
|
||||||
load_test_report.version_id.length_range=性能測試報告版本ID長度範圍為{min}到{max}
|
|
||||||
load_test_report.version_id.not_blank=性能測試報告版本ID不能為空
|
|
||||||
load_test_report_result.id.not_blank=性能測試報告結果ID不能為空
|
|
||||||
load_test_report_result.report_id.length_range=性能測試報告結果報告ID長度範圍為{min}到{max}
|
|
||||||
load_test_report_result.report_id.not_blank=性能測試報告結果報告ID不能為空
|
|
||||||
load_test_follower.test_id.length_range=性能測試ID長度範圍為{min}到{max}
|
|
||||||
load_test_follower.test_id.not_blank=性能測試ID不能為空
|
|
||||||
load_test_follower.user_id.length_range=性能測試關注ID長度範圍為{min}到{max}
|
|
||||||
load_test_follower.user_id.not_blank=性能測試關注ID不能為空
|
|
||||||
load_test_report_result_part.report_id.not_blank=性能測試報告結果報告ID不能為空
|
|
||||||
load_test_report_result_part.report_key.not_blank=性能測試報告結果報告KEY不能為空
|
|
||||||
load_test_report_result_part.resource_index.not_blank=性能測試報告結果資源索引不能為空
|
|
||||||
load_test.id.not_blank=性能測試ID不能為空
|
|
||||||
load_test.project_id.length_range=性能測試項目ID長度範圍為{min}到{max}
|
|
||||||
load_test.project_id.not_blank=性能測試項目ID不能為空
|
|
||||||
load_test.name.length_range=性能測試名稱長度範圍為{min}到{max}
|
|
||||||
load_test.name.not_blank=性能測試名稱不能為空
|
|
||||||
load_test.status.length_range=性能測試狀態長度範圍為{min}到{max}
|
|
||||||
load_test.status.not_blank=性能測試狀態不能為空
|
|
||||||
load_test.test_resource_pool_id.length_range=性能測試資源池ID長度範圍為{min}到{max}
|
|
||||||
load_test.test_resource_pool_id.not_blank=性能測試資源池ID不能為空
|
|
||||||
load_test.create_user.length_range=性能測試創建人長度範圍為{min}到{max}
|
|
||||||
load_test.create_user.not_blank=性能測試創建人不能為空
|
|
||||||
load_test.version_id.length_range=性能測試版本ID長度範圍為{min}到{max}
|
|
||||||
load_test.version_id.not_blank=性能測試版本ID不能為空
|
|
||||||
load_test.ref_id.length_range=性能測試關聯ID長度範圍為{min}到{max}
|
|
||||||
load_test.ref_id.not_blank=性能測試關聯ID不能為空
|
|
||||||
load_test.latest.length_range=性能測試是否為最新版本長度範圍為{min}到{max}
|
|
||||||
load_test.latest.not_blank=性能測試是否為最新版本不能為空
|
|
||||||
load_test_report_blob.report_id.not_blank=性能測試報告結果報告ID不能為空
|
|
||||||
load_test_api.id.not_blank=性能測試接口ID不能為空
|
|
||||||
load_test_api.api_id.length_range=性能測試接口ID長度範圍為{min}到{max}
|
|
||||||
load_test_api.api_id.not_blank=性能測試接口ID不能為空
|
|
||||||
load_test_api.load_test_id.length_range=性能測試接口性能測試ID長度範圍為{min}到{max}
|
|
||||||
load_test_api.load_test_id.not_blank=性能測試接口性能測試ID不能為空
|
|
||||||
load_test_api.type.length_range=性能測試接口類型長度範圍為{min}到{max}
|
|
||||||
load_test_api.type.not_blank=性能測試接口類型不能為空
|
|
||||||
load_test_report_file.report_id.length_range=性能測試報告結果報告ID長度範圍為{min}到{max}
|
|
||||||
load_test_report_file.report_id.not_blank=性能測試報告結果報告ID不能為空
|
|
||||||
load_test_report_file.file_id.length_range=性能測試報告結果文件ID長度範圍為{min}到{max}
|
|
||||||
load_test_report_file.file_id.not_blank=性能測試報告結果文件ID不能為空
|
|
||||||
load_test_report_result_realtime.report_id.not_blank=性能測試報告結果報告ID不能為空
|
|
||||||
load_test_report_result_realtime.report_key.not_blank=性能測試報告結果報告KEY不能為空
|
|
||||||
load_test_report_result_realtime.resource_index.not_blank=性能測試報告結果資源索引不能為空
|
|
||||||
load_test_report_result_realtime.sort.not_blank=性能測試報告結果排序不能為空
|
|
||||||
load_test_file.test_id.length_range=性能測試文件ID長度範圍為{min}到{max}
|
|
||||||
load_test_file.test_id.not_blank=性能測試文件ID不能為空
|
|
||||||
load_test_file.file_id.length_range=性能測試文件文件ID長度範圍為{min}到{max}
|
|
||||||
load_test_file.file_id.not_blank=性能測試文件文件ID不能為空
|
|
||||||
load_test_blob.test_id.not_blank=性能測試二進製文件ID不能為空
|
|
||||||
load_test_report_log.id.not_blank=性能測試報告日誌ID不能為空
|
|
||||||
load_test_report_log.report_id.length_range=性能測試報告日誌報告ID長度範圍為{min}到{max}
|
|
||||||
load_test_report_log.report_id.not_blank=性能測試報告日誌報告ID不能為空
|
|
||||||
load_test_report_log.resource_id.length_range=性能測試報告日誌資源ID長度範圍為{min}到{max}
|
|
||||||
load_test_report_log.resource_id.not_blank=性能測試報告日誌資源ID不能為空
|
|
|
@ -1,151 +0,0 @@
|
||||||
ui_scenario_report_result.id.not_blankUI=场景报告结果ID不能为空
|
|
||||||
ui_scenario_report_result.resource_id.length_range=UI场景报告结果资源ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_report_result.resource_id.not_blank=UI场景报告结果资源ID不能为空
|
|
||||||
ui_scenario_report_result.report_id.length_range=UI场景报告结果报告ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_report_result.report_id.not_blank=UI场景报告结果报告ID不能为空
|
|
||||||
ui_scenario_report_result.status.length_range=UI场景报告结果状态长度范围为{min}到{max}
|
|
||||||
ui_scenario_report_result.status.not_blank=UI场景报告结果状态不能为空
|
|
||||||
ui_custom_command_module.id.not_blank=UI自定义指令模块ID不能为空
|
|
||||||
ui_custom_command_module.project_id.length_range=UI自定义指令模块项目ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.project_id.not_blank=UI自定义指令模块项目ID不能为空
|
|
||||||
ui_custom_command_module.name.length_range=UI自定义指令模块名称长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.name.not_blank=UI自定义指令模块名称不能为空
|
|
||||||
ui_custom_command_module.parent_id.length_range=UI自定义指令模块父ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.parent_id.not_blank=UI自定义指令模块父ID不能为空
|
|
||||||
ui_custom_command_module.pos.length_range=UI自定义指令模块位置长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.pos.not_blank=UI自定义指令模块位置不能为空
|
|
||||||
ui_custom_command_module.create_user.length_range=UI自定义指令模块创建人长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.create_user.not_blank=UI自定义指令模块创建人不能为空
|
|
||||||
ui_element_module.id.not_blank=UI元素模块ID不能为空
|
|
||||||
ui_element_module.project_id.length_range=UI元素模块项目ID长度范围为{min}到{max}
|
|
||||||
ui_element_module.project_id.not_blank=UI元素模块项目ID不能为空
|
|
||||||
ui_element_module.name.length_range=UI元素模块名称长度范围为{min}到{max}
|
|
||||||
ui_element_module.name.not_blank=UI元素模块名称不能为空
|
|
||||||
ui_element_module.parent_id.length_range=UI元素模块父ID长度范围为{min}到{max}
|
|
||||||
ui_element_module.parent_id.not_blank=UI元素模块父ID不能为空
|
|
||||||
ui_element_module.pos.length_range=UI元素模块位置长度范围为{min}到{max}
|
|
||||||
ui_element_module.pos.not_blank=UI元素模块位置不能为空
|
|
||||||
ui_element_module.create_user.length_range=UI元素模块创建人长度范围为{min}到{max}
|
|
||||||
ui_element_module.create_user.not_blank=UI元素模块创建人不能为空
|
|
||||||
ui_element.id.not_blank=UI元素ID不能为空
|
|
||||||
ui_element.module_id.length_range=UI元素模块ID长度范围为{min}到{max}
|
|
||||||
ui_element.module_id.not_blank=UI元素模块ID不能为空
|
|
||||||
ui_element.project_id.length_range=UI元素项目ID长度范围为{min}到{max}
|
|
||||||
ui_element.project_id.not_blank=UI元素项目ID不能为空
|
|
||||||
ui_element.name.length_range=UI元素名称长度范围为{min}到{max}
|
|
||||||
ui_element.name.not_blank=UI元素名称不能为空
|
|
||||||
ui_element.location_type.length_range=UI元素位置类型长度范围为{min}到{max}
|
|
||||||
ui_element.location_type.not_blank=UI元素位置类型不能为空
|
|
||||||
ui_element.location.length_range=UI元素位置长度范围为{min}到{max}
|
|
||||||
ui_element.location.not_blank=UI元素位置不能为空
|
|
||||||
ui_element.create_user.length_range=UI元素创建人长度范围为{min}到{max}
|
|
||||||
ui_element.create_user.not_blank=UI元素创建人不能为空
|
|
||||||
ui_element.update_user.length_range=UI元素更新人长度范围为{min}到{max}
|
|
||||||
ui_element.update_user.not_blank=UI元素更新人不能为空
|
|
||||||
ui_element.version_id.length_range=UI元素版本ID长度范围为{min}到{max}
|
|
||||||
ui_element.version_id.not_blank=UI元素版本ID不能为空
|
|
||||||
ui_element.ref_id.length_range=UI元素引用ID长度范围为{min}到{max}
|
|
||||||
ui_element.ref_id.not_blank=UI元素引用ID不能为空
|
|
||||||
ui_element.latest.length_range=UI元素最新长度范围为{min}到{max}
|
|
||||||
ui_element.latest.not_blank=UI元素最新不能为空
|
|
||||||
ui_element_reference.id.not_blank=UI元素引用ID不能为空
|
|
||||||
ui_element_reference.element_id.length_range=UI元素引用元素ID长度范围为{min}到{max}
|
|
||||||
ui_element_reference.element_id.not_blank=UI元素引用元素ID不能为空
|
|
||||||
ui_element_reference.element_module_id.length_range=UI元素引用元素模块ID长度范围为{min}到{max}
|
|
||||||
ui_element_reference.element_module_id.not_blank=UI元素引用元素模块ID不能为空
|
|
||||||
ui_element_reference.scenario_id.length_range=UI元素引用场景ID长度范围为{min}到{max}
|
|
||||||
ui_element_reference.scenario_id.not_blank=UI元素引用场景ID不能为空
|
|
||||||
ui_element_reference.project_id.length_range=UI元素引用项目ID长度范围为{min}到{max}
|
|
||||||
ui_element_reference.project_id.not_blank=UI元素引用项目ID不能为空
|
|
||||||
ui_scenario_report.id.not_blank=UI场景报告ID不能为空
|
|
||||||
ui_scenario_report.project_id.length_range=UI场景报告项目ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.project_id.not_blank=UI场景报告项目ID不能为空
|
|
||||||
ui_scenario_report.name.length_range=UI场景报告名称长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.name.not_blank=UI场景报告名称不能为空
|
|
||||||
ui_scenario_report.status.length_range=UI场景报告状态长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.status.not_blank=UI场景报告状态不能为空
|
|
||||||
ui_scenario_report.trigger_mode.length_range=UI场景报告触发模式长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.trigger_mode.not_blank=UI场景报告触发模式不能为空
|
|
||||||
ui_scenario_report.create_user.length_range=UI场景报告创建人长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.create_user.not_blank=UI场景报告创建人不能为空
|
|
||||||
ui_scenario_report_blob.id.not_blank=UI场景报告blob报告ID不能为空
|
|
||||||
ui_scenario.id.not_blank=UI场景ID不能为空
|
|
||||||
ui_scenario.project_id.length_range=UI场景项目ID长度范围为{min}到{max}
|
|
||||||
ui_scenario.project_id.not_blank=UI场景项目ID不能为空
|
|
||||||
ui_scenario.module_id.length_range=UI场景模块ID长度范围为{min}到{max}
|
|
||||||
ui_scenario.module_id.not_blank=UI场景模块ID不能为空
|
|
||||||
ui_scenario.module_path.length_range=UI场景模块路径长度范围为{min}到{max}
|
|
||||||
ui_scenario.module_path.not_blank=UI场景模块路径不能为空
|
|
||||||
ui_scenario.name.length_range=UI场景名称长度范围为{min}到{max}
|
|
||||||
ui_scenario.name.not_blank=UI场景名称不能为空
|
|
||||||
ui_scenario.level.length_range=UI场景级别长度范围为{min}到{max}
|
|
||||||
ui_scenario.level.not_blank=UI场景级别不能为空
|
|
||||||
ui_scenario.status.length_range=UI场景状态长度范围为{min}到{max}
|
|
||||||
ui_scenario.status.not_blank=UI场景状态不能为空
|
|
||||||
ui_scenario.principal.length_range=UI场景负责人长度范围为{min}到{max}
|
|
||||||
ui_scenario.principal.not_blank=UI场景负责人不能为空
|
|
||||||
ui_scenario.deleted.length_range=UI场景删除标志长度范围为{min}到{max}
|
|
||||||
ui_scenario.deleted.not_blank=UI场景删除标志不能为空
|
|
||||||
ui_scenario.create_user.length_range=UI场景创建人长度范围为{min}到{max}
|
|
||||||
ui_scenario.create_user.not_blank=UI场景创建人不能为空
|
|
||||||
ui_scenario.version_id.length_range=UI场景版本ID长度范围为{min}到{max}
|
|
||||||
ui_scenario.version_id.not_blank=UI场景版本ID不能为空
|
|
||||||
ui_scenario.ref_id.length_range=UI场景引用ID长度范围为{min}到{max}
|
|
||||||
ui_scenario.ref_id.not_blank=UI场景引用ID不能为空
|
|
||||||
ui_scenario.latest.length_range=UI场景最新长度范围为{min}到{max}
|
|
||||||
ui_scenario.latest.not_blank=UI场景最新不能为空
|
|
||||||
ui_custom_command.id.not_blank=UI自定义命令ID不能为空
|
|
||||||
ui_custom_command.project_id.length_range=UI自定义命令项目ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command.project_id.not_blank=UI自定义命令项目ID不能为空
|
|
||||||
ui_custom_command.module_id.length_range=UI自定义命令模块ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command.module_id.not_blank=UI自定义命令模块ID不能为空
|
|
||||||
ui_custom_command.module_path.length_range=UI自定义命令模块路径长度范围为{min}到{max}
|
|
||||||
ui_custom_command.module_path.not_blank=UI自定义命令模块路径不能为空
|
|
||||||
ui_custom_command.name.length_range=UI自定义命令名称长度范围为{min}到{max}
|
|
||||||
ui_custom_command.name.not_blank=UI自定义命令名称不能为空
|
|
||||||
ui_custom_command.level.length_range=UI自定义命令级别长度范围为{min}到{max}
|
|
||||||
ui_custom_command.level.not_blank=UI自定义命令级别不能为空
|
|
||||||
ui_custom_command.status.length_range=UI自定义命令状态长度范围为{min}到{max}
|
|
||||||
ui_custom_command.status.not_blank=UI自定义命令状态不能为空
|
|
||||||
ui_custom_command.principal.length_range=UI自定义命令负责人长度范围为{min}到{max}
|
|
||||||
ui_custom_command.principal.not_blank=UI自定义命令负责人不能为空
|
|
||||||
ui_custom_command.deleted.length_range=UI自定义命令删除标志长度范围为{min}到{max}
|
|
||||||
ui_custom_command.deleted.not_blank=UI自定义命令删除标志不能为空
|
|
||||||
ui_custom_command.create_user.length_range=UI自定义命令创建人长度范围为{min}到{max}
|
|
||||||
ui_custom_command.create_user.not_blank=UI自定义命令创建人不能为空
|
|
||||||
ui_custom_command.version_id.length_range=UI自定义命令版本ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command.version_id.not_blank=UI自定义命令版本ID不能为空
|
|
||||||
ui_custom_command.ref_id.length_range=UI自定义命令引用ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command.ref_id.not_blank=UI自定义命令引用ID不能为空
|
|
||||||
ui_custom_command.latest.length_range=UI自定义命令最新长度范围为{min}到{max}
|
|
||||||
ui_custom_command.latest.not_blank=UI自定义命令最新不能为空
|
|
||||||
ui_scenario_execution_info.id.not_blank=UI场景执行信息ID不能为空
|
|
||||||
ui_scenario_execution_info.source_id.length_range=UI场景执行信息来源ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_execution_info.source_id.not_blank=UI场景执行信息来源ID不能为空
|
|
||||||
ui_scenario_execution_info.result.length_range=UI场景执行信息结果长度范围为{min}到{max}
|
|
||||||
ui_scenario_execution_info.result.not_blank=UI场景执行信息结果不能为空
|
|
||||||
ui_scenario_module.id.not_blank=UI场景模块ID不能为空
|
|
||||||
ui_scenario_module.project_id.length_range=UI场景模块项目ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.project_id.not_blank=UI场景模块项目ID不能为空
|
|
||||||
ui_scenario_module.name.length_range=UI场景模块名称长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.name.not_blank=UI场景模块名称不能为空
|
|
||||||
ui_scenario_module.parent_id.length_range=UI场景模块父ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.parent_id.not_blank=UI场景模块父ID不能为空
|
|
||||||
ui_scenario_module.pos.length_range=UI场景模块位置长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.pos.not_blank=UI场景模块位置不能为空
|
|
||||||
ui_scenario_module.create_user.length_range=UI场景模块创建人长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.create_user.not_blank=UI场景模块创建人不能为空
|
|
||||||
ui_scenario_reference.id.not_blank=UI场景引用ID不能为空
|
|
||||||
ui_scenario_reference.ui_scenario_id.length_range=UI场景引用UI场景ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_reference.ui_scenario_id.not_blank=UI场景引用UI场景ID不能为空
|
|
||||||
ui_scenario_reference.create_user.length_range=UI场景引用创建人长度范围为{min}到{max}
|
|
||||||
ui_scenario_reference.create_user.not_blank=UI场景引用创建人不能为空
|
|
||||||
ui_scenario_reference.reference_id.length_range=UI场景引用引用ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_reference.reference_id.not_blank=UI场景引用引用ID不能为空
|
|
||||||
ui_scenario_reference.data_type.length_range=UI场景引用数据类型长度范围为{min}到{max}
|
|
||||||
ui_scenario_reference.data_type.not_blank=UI场景引用数据类型不能为空
|
|
||||||
ui_custom_command_blob.id.not_blank=UI自定义命令场景ID不能为空
|
|
||||||
ui_scenario_report_structure.id.not_blank=UI场景报告结构ID不能为空
|
|
||||||
ui_scenario_report_structure.report_id.length_range=UI场景报告结构报告ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_report_structure.report_id.not_blank=UI场景报告结构报告ID不能为空
|
|
||||||
ui_scenario_blob.id.not_blank=UI场景场景ID不能为空
|
|
|
@ -1,151 +0,0 @@
|
||||||
ui_scenario_report_result.id.not_blank=UI Scenario Report Result ID is required
|
|
||||||
ui_scenario_report_result.resource_id.length_range=UI Scenario Report Result Resource ID length must be between {min} and {max}
|
|
||||||
ui_scenario_report_result.resource_id.not_blank=UI Scenario Report Result Resource ID is required
|
|
||||||
ui_scenario_report_result.report_id.length_range=UI Scenario Report Result Report ID length must be between {min} and {max}
|
|
||||||
ui_scenario_report_result.report_id.not_blank=UI Scenario Report Result Report ID is required
|
|
||||||
ui_scenario_report_result.status.length_range=UI Scenario Report Result Status length must be between {min} and {max}
|
|
||||||
ui_scenario_report_result.status.not_blank=UI Scenario Report Result Status is required
|
|
||||||
ui_custom_command_module.id.not_blank=UI Custom Command Module ID is required
|
|
||||||
ui_custom_command_module.project_id.length_range=UI Custom Command Module Project ID length must be between {min} and {max}
|
|
||||||
ui_custom_command_module.project_id.not_blank=UI Custom Command Module Project ID is required
|
|
||||||
ui_custom_command_module.name.length_range=UI Custom Command Module Name length must be between {min} and {max}
|
|
||||||
ui_custom_command_module.name.not_blank=UI Custom Command Module Name is required
|
|
||||||
ui_custom_command_module.parent_id.length_range=UI Custom Command Module Parent ID length must be between {min} and {max}
|
|
||||||
ui_custom_command_module.parent_id.not_blank=UI Custom Command Module Parent ID is required
|
|
||||||
ui_custom_command_module.pos.length_range=UI Custom Command Module Pos length must be between {min} and {max}
|
|
||||||
ui_custom_command_module.pos.not_blank=UI Custom Command Module Pos is required
|
|
||||||
ui_custom_command_module.create_user.length_range=UI Custom Command Module Create User length must be between {min} and {max}
|
|
||||||
ui_custom_command_module.create_user.not_blank=UI Custom Command Module Create User is required
|
|
||||||
ui_element_module.id.not_blank=UI Element Module ID is required
|
|
||||||
ui_element_module.project_id.length_range=UI Element Module Project ID length must be between {min} and {max}
|
|
||||||
ui_element_module.project_id.not_blank=UI Element Module Project ID is required
|
|
||||||
ui_element_module.name.length_range=UI Element Module Name length must be between {min} and {max}
|
|
||||||
ui_element_module.name.not_blank=UI Element Module Name is required
|
|
||||||
ui_element_module.parent_id.length_range=UI Element Module Parent ID length must be between {min} and {max}
|
|
||||||
ui_element_module.parent_id.not_blank=UI Element Module Parent ID is required
|
|
||||||
ui_element_module.pos.length_range=UI Element Module Pos length must be between {min} and {max}
|
|
||||||
ui_element_module.pos.not_blank=UI Element Module Pos is required
|
|
||||||
ui_element_module.create_user.length_range=UI Element Module Create User length must be between {min} and {max}
|
|
||||||
ui_element_module.create_user.not_blank=UI Element Module Create User is required
|
|
||||||
ui_element.id.not_blank=UI Element ID is required
|
|
||||||
ui_element.module_id.length_range=UI Element Module ID length must be between {min} and {max}
|
|
||||||
ui_element.module_id.not_blank=UI Element Module ID is required
|
|
||||||
ui_element.project_id.length_range=UI Element Project ID length must be between {min} and {max}
|
|
||||||
ui_element.project_id.not_blank=UI Element Project ID is required
|
|
||||||
ui_element.name.length_range=UI Element Name length must be between {min} and {max}
|
|
||||||
ui_element.name.not_blank=UI Element Name is required
|
|
||||||
ui_element.location_type.length_range=UI Element Location Type length must be between {min} and {max}
|
|
||||||
ui_element.location_type.not_blank=UI Element Location Type is required
|
|
||||||
ui_element.location.length_range=UI Element Location length must be between {min} and {max}
|
|
||||||
ui_element.location.not_blank=UI Element Location is required
|
|
||||||
ui_element.create_user.length_range=UI Element Create User length must be between {min} and {max}
|
|
||||||
ui_element.create_user.not_blank=UI Element Create User is required
|
|
||||||
ui_element.update_user.length_range=UI Element Update User length must be between {min} and {max}
|
|
||||||
ui_element.update_user.not_blank=UI Element Update User is required
|
|
||||||
ui_element.version_id.length_range=UI Element Version ID length must be between {min} and {max}
|
|
||||||
ui_element.version_id.not_blank=UI Element Version ID is required
|
|
||||||
ui_element.ref_id.length_range=UI Element Ref ID length must be between {min} and {max}
|
|
||||||
ui_element.ref_id.not_blank=UI Element Ref ID is required
|
|
||||||
ui_element.latest.length_range=UI Element Latest length must be between {min} and {max}
|
|
||||||
ui_element.latest.not_blank=UI Element Latest is required
|
|
||||||
ui_element_reference.id.not_blank=UI Element Reference ID is required
|
|
||||||
ui_element_reference.element_id.length_range=UI Element Reference Element ID length must be between {min} and {max}
|
|
||||||
ui_element_reference.element_id.not_blank=UI Element Reference Element ID is required
|
|
||||||
ui_element_reference.element_module_id.length_range=UI Element Reference Element Module ID length must be between {min} and {max}
|
|
||||||
ui_element_reference.element_module_id.not_blank=UI Element Reference Element Module ID is required
|
|
||||||
ui_element_reference.scenario_id.length_range=UI Element Reference Scenario ID length must be between {min} and {max}
|
|
||||||
ui_element_reference.scenario_id.not_blank=UI Element Reference Scenario ID is required
|
|
||||||
ui_element_reference.project_id.length_range=UI Element Reference Project ID length must be between {min} and {max}
|
|
||||||
ui_element_reference.project_id.not_blank=UI Element Reference Project ID is required
|
|
||||||
ui_scenario_report.id.not_blank=UI Scenario Report ID is required
|
|
||||||
ui_scenario_report.project_id.length_range=UI Scenario Report Project ID length must be between {min} and {max}
|
|
||||||
ui_scenario_report.project_id.not_blank=UI Scenario Report Project ID is required
|
|
||||||
ui_scenario_report.name.length_range=UI Scenario Report Name length must be between {min} and {max}
|
|
||||||
ui_scenario_report.name.not_blank=UI Scenario Report Name is required
|
|
||||||
ui_scenario_report.status.length_range=UI Scenario Report Status length must be between {min} and {max}
|
|
||||||
ui_scenario_report.status.not_blank=UI Scenario Report Status is required
|
|
||||||
ui_scenario_report.trigger_mode.length_range=UI Scenario Report Trigger Mode length must be between {min} and {max}
|
|
||||||
ui_scenario_report.trigger_mode.not_blank=UI Scenario Report Trigger Mode is required
|
|
||||||
ui_scenario_report.create_user.length_range=UI Scenario Report Create User length must be between {min} and {max}
|
|
||||||
ui_scenario_report.create_user.not_blank=UI Scenario Report Create User is required
|
|
||||||
ui_scenario_report_blob.id.not_blank=UI Scenario Report Blob Report ID is required
|
|
||||||
ui_scenario.id.not_blank=UI Scenario ID is required
|
|
||||||
ui_scenario.project_id.length_range=UI Scenario Project ID length must be between {min} and {max}
|
|
||||||
ui_scenario.project_id.not_blank=UI Scenario Project ID is required
|
|
||||||
ui_scenario.module_id.length_range=UI Scenario Module ID length must be between {min} and {max}
|
|
||||||
ui_scenario.module_id.not_blank=UI Scenario Module ID is required
|
|
||||||
ui_scenario.module_path.length_range=UI Scenario Module Path length must be between {min} and {max}
|
|
||||||
ui_scenario.module_path.not_blank=UI Scenario Module Path is required
|
|
||||||
ui_scenario.name.length_range=UI Scenario Name length must be between {min} and {max}
|
|
||||||
ui_scenario.name.not_blank=UI Scenario Name is required
|
|
||||||
ui_scenario.level.length_range=UI Scenario Level length must be between {min} and {max}
|
|
||||||
ui_scenario.level.not_blank=UI Scenario Level is required
|
|
||||||
ui_scenario.status.length_range=UI Scenario Status length must be between {min} and {max}
|
|
||||||
ui_scenario.status.not_blank=UI Scenario Status is required
|
|
||||||
ui_scenario.principal.length_range=UI Scenario Principal length must be between {min} and {max}
|
|
||||||
ui_scenario.principal.not_blank=UI Scenario Principal is required
|
|
||||||
ui_scenario.deleted.length_range=UI Scenario Deleted length must be between {min} and {max}
|
|
||||||
ui_scenario.deleted.not_blank=UI Scenario Deleted is required
|
|
||||||
ui_scenario.create_user.length_range=UI Scenario Create User length must be between {min} and {max}
|
|
||||||
ui_scenario.create_user.not_blank=UI Scenario Create User is required
|
|
||||||
ui_scenario.version_id.length_range=UI Scenario Version ID length must be between {min} and {max}
|
|
||||||
ui_scenario.version_id.not_blank=UI Scenario Version ID is required
|
|
||||||
ui_scenario.ref_id.length_range=UI Scenario Ref ID length must be between {min} and {max}
|
|
||||||
ui_scenario.ref_id.not_blank=UI Scenario Ref ID is required
|
|
||||||
ui_scenario.latest.length_range=UI Scenario Latest length must be between {min} and {max}
|
|
||||||
ui_scenario.latest.not_blank=UI Scenario Latest is required
|
|
||||||
ui_custom_command.id.not_blank=UI Custom Command ID is required
|
|
||||||
ui_custom_command.project_id.length_range=UI Custom Command Project ID length must be between {min} and {max}
|
|
||||||
ui_custom_command.project_id.not_blank=UI Custom Command Project ID is required
|
|
||||||
ui_custom_command.module_id.length_range=UI Custom Command Module ID length must be between {min} and {max}
|
|
||||||
ui_custom_command.module_id.not_blank=UI Custom Command Module ID is required
|
|
||||||
ui_custom_command.module_path.length_range=UI Custom Command Module Path length must be between {min} and {max}
|
|
||||||
ui_custom_command.module_path.not_blank=UI Custom Command Module Path is required
|
|
||||||
ui_custom_command.name.length_range=UI Custom Command Name length must be between {min} and {max}
|
|
||||||
ui_custom_command.name.not_blank=UI Custom Command Name is required
|
|
||||||
ui_custom_command.level.length_range=UI Custom Command Level length must be between {min} and {max}
|
|
||||||
ui_custom_command.level.not_blank=UI Custom Command Level is required
|
|
||||||
ui_custom_command.status.length_range=UI Custom Command Status length must be between {min} and {max}
|
|
||||||
ui_custom_command.status.not_blank=UI Custom Command Status is required
|
|
||||||
ui_custom_command.principal.length_range=UI Custom Command Principal length must be between {min} and {max}
|
|
||||||
ui_custom_command.principal.not_blank=UI Custom Command Principal is required
|
|
||||||
ui_custom_command.deleted.length_range=UI Custom Command Deleted length must be between {min} and {max}
|
|
||||||
ui_custom_command.deleted.not_blank=UI Custom Command Deleted is required
|
|
||||||
ui_custom_command.create_user.length_range=UI Custom Command Create User length must be between {min} and {max}
|
|
||||||
ui_custom_command.create_user.not_blank=UI Custom Command Create User is required
|
|
||||||
ui_custom_command.version_id.length_range=UI Custom Command Version ID length must be between {min} and {max}
|
|
||||||
ui_custom_command.version_id.not_blank=UI Custom Command Version ID is required
|
|
||||||
ui_custom_command.ref_id.length_range=UI Custom Command Ref ID length must be between {min} and {max}
|
|
||||||
ui_custom_command.ref_id.not_blank=UI Custom Command Ref ID is required
|
|
||||||
ui_custom_command.latest.length_range=UI Custom Command Latest length must be between {min} and {max}
|
|
||||||
ui_custom_command.latest.not_blank=UI Custom Command Latest is required
|
|
||||||
ui_scenario_execution_info.id.not_blank=UI Scenario Execution Info ID is required
|
|
||||||
ui_scenario_execution_info.source_id.length_range=UI Scenario Execution Info Source ID length must be between {min} and {max}
|
|
||||||
ui_scenario_execution_info.source_id.not_blank=UI Scenario Execution Info Source ID is required
|
|
||||||
ui_scenario_execution_info.result.length_range=UI Scenario Execution Info Result length must be between {min} and {max}
|
|
||||||
ui_scenario_execution_info.result.not_blank=UI Scenario Execution Info Result is required
|
|
||||||
ui_scenario_module.id.not_blank=UI Scenario Module ID is required
|
|
||||||
ui_scenario_module.project_id.length_range=UI Scenario Module Project ID length must be between {min} and {max}
|
|
||||||
ui_scenario_module.project_id.not_blank=UI Scenario Module Project ID is required
|
|
||||||
ui_scenario_module.name.length_range=UI Scenario Module Name length must be between {min} and {max}
|
|
||||||
ui_scenario_module.name.not_blank=UI Scenario Module Name is required
|
|
||||||
ui_scenario_module.parent_id.length_range=UI Scenario Module Parent ID length must be between {min} and {max}
|
|
||||||
ui_scenario_module.parent_id.not_blank=UI Scenario Module Parent ID is required
|
|
||||||
ui_scenario_module.pos.length_range=UI Scenario Module Pos length must be between {min} and {max}
|
|
||||||
ui_scenario_module.pos.not_blank=UI Scenario Module Pos is required
|
|
||||||
ui_scenario_module.create_user.length_range=UI Scenario Module Create User length must be between {min} and {max}
|
|
||||||
ui_scenario_module.create_user.not_blank=UI Scenario Module Create User is required
|
|
||||||
ui_scenario_reference.id.not_blank=UI Scenario Reference ID is required
|
|
||||||
ui_scenario_reference.ui_scenario_id.length_range=UI Scenario Reference UI Scenario ID length must be between {min} and {max}
|
|
||||||
ui_scenario_reference.ui_scenario_id.not_blank=UI Scenario Reference UI Scenario ID is required
|
|
||||||
ui_scenario_reference.create_user.length_range=UI Scenario Create User length must be between {min} and {max}
|
|
||||||
ui_scenario_reference.create_user.not_blank=UI Scenario Create User is required
|
|
||||||
ui_scenario_reference.reference_id.length_range=UI Scenario Reference ID length must be between {min} and {max}
|
|
||||||
ui_scenario_reference.reference_id.not_blank=UI Scenario Reference ID is required
|
|
||||||
ui_scenario_reference.data_type.length_range=UI Scenario Reference Data Type length must be between {min} and {max}
|
|
||||||
ui_scenario_reference.data_type.not_blank=UI Scenario Reference Data Type is required
|
|
||||||
ui_custom_command_blob.id.not_blank=UI Custom Command Blob Scenario ID is required
|
|
||||||
ui_scenario_report_structure.id.not_blank=UI Scenario Report Structure ID is required
|
|
||||||
ui_scenario_report_structure.report_id.length_range=UI Scenario Report Structure Report ID length must be between {min} and {max}
|
|
||||||
ui_scenario_report_structure.report_id.not_blank=UI Scenario Report Structure Report ID is required
|
|
||||||
ui_scenario_blob.id.not_blank=UI Scenario Blob Scenario ID is required
|
|
|
@ -1,151 +0,0 @@
|
||||||
ui_scenario_report_result.id.not_blankUI=场景报告结果ID不能为空
|
|
||||||
ui_scenario_report_result.resource_id.length_range=UI场景报告结果资源ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_report_result.resource_id.not_blank=UI场景报告结果资源ID不能为空
|
|
||||||
ui_scenario_report_result.report_id.length_range=UI场景报告结果报告ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_report_result.report_id.not_blank=UI场景报告结果报告ID不能为空
|
|
||||||
ui_scenario_report_result.status.length_range=UI场景报告结果状态长度范围为{min}到{max}
|
|
||||||
ui_scenario_report_result.status.not_blank=UI场景报告结果状态不能为空
|
|
||||||
ui_custom_command_module.id.not_blank=UI自定义指令模块ID不能为空
|
|
||||||
ui_custom_command_module.project_id.length_range=UI自定义指令模块项目ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.project_id.not_blank=UI自定义指令模块项目ID不能为空
|
|
||||||
ui_custom_command_module.name.length_range=UI自定义指令模块名称长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.name.not_blank=UI自定义指令模块名称不能为空
|
|
||||||
ui_custom_command_module.parent_id.length_range=UI自定义指令模块父ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.parent_id.not_blank=UI自定义指令模块父ID不能为空
|
|
||||||
ui_custom_command_module.pos.length_range=UI自定义指令模块位置长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.pos.not_blank=UI自定义指令模块位置不能为空
|
|
||||||
ui_custom_command_module.create_user.length_range=UI自定义指令模块创建人长度范围为{min}到{max}
|
|
||||||
ui_custom_command_module.create_user.not_blank=UI自定义指令模块创建人不能为空
|
|
||||||
ui_element_module.id.not_blank=UI元素模块ID不能为空
|
|
||||||
ui_element_module.project_id.length_range=UI元素模块项目ID长度范围为{min}到{max}
|
|
||||||
ui_element_module.project_id.not_blank=UI元素模块项目ID不能为空
|
|
||||||
ui_element_module.name.length_range=UI元素模块名称长度范围为{min}到{max}
|
|
||||||
ui_element_module.name.not_blank=UI元素模块名称不能为空
|
|
||||||
ui_element_module.parent_id.length_range=UI元素模块父ID长度范围为{min}到{max}
|
|
||||||
ui_element_module.parent_id.not_blank=UI元素模块父ID不能为空
|
|
||||||
ui_element_module.pos.length_range=UI元素模块位置长度范围为{min}到{max}
|
|
||||||
ui_element_module.pos.not_blank=UI元素模块位置不能为空
|
|
||||||
ui_element_module.create_user.length_range=UI元素模块创建人长度范围为{min}到{max}
|
|
||||||
ui_element_module.create_user.not_blank=UI元素模块创建人不能为空
|
|
||||||
ui_element.id.not_blank=UI元素ID不能为空
|
|
||||||
ui_element.module_id.length_range=UI元素模块ID长度范围为{min}到{max}
|
|
||||||
ui_element.module_id.not_blank=UI元素模块ID不能为空
|
|
||||||
ui_element.project_id.length_range=UI元素项目ID长度范围为{min}到{max}
|
|
||||||
ui_element.project_id.not_blank=UI元素项目ID不能为空
|
|
||||||
ui_element.name.length_range=UI元素名称长度范围为{min}到{max}
|
|
||||||
ui_element.name.not_blank=UI元素名称不能为空
|
|
||||||
ui_element.location_type.length_range=UI元素位置类型长度范围为{min}到{max}
|
|
||||||
ui_element.location_type.not_blank=UI元素位置类型不能为空
|
|
||||||
ui_element.location.length_range=UI元素位置长度范围为{min}到{max}
|
|
||||||
ui_element.location.not_blank=UI元素位置不能为空
|
|
||||||
ui_element.create_user.length_range=UI元素创建人长度范围为{min}到{max}
|
|
||||||
ui_element.create_user.not_blank=UI元素创建人不能为空
|
|
||||||
ui_element.update_user.length_range=UI元素更新人长度范围为{min}到{max}
|
|
||||||
ui_element.update_user.not_blank=UI元素更新人不能为空
|
|
||||||
ui_element.version_id.length_range=UI元素版本ID长度范围为{min}到{max}
|
|
||||||
ui_element.version_id.not_blank=UI元素版本ID不能为空
|
|
||||||
ui_element.ref_id.length_range=UI元素引用ID长度范围为{min}到{max}
|
|
||||||
ui_element.ref_id.not_blank=UI元素引用ID不能为空
|
|
||||||
ui_element.latest.length_range=UI元素最新长度范围为{min}到{max}
|
|
||||||
ui_element.latest.not_blank=UI元素最新不能为空
|
|
||||||
ui_element_reference.id.not_blank=UI元素引用ID不能为空
|
|
||||||
ui_element_reference.element_id.length_range=UI元素引用元素ID长度范围为{min}到{max}
|
|
||||||
ui_element_reference.element_id.not_blank=UI元素引用元素ID不能为空
|
|
||||||
ui_element_reference.element_module_id.length_range=UI元素引用元素模块ID长度范围为{min}到{max}
|
|
||||||
ui_element_reference.element_module_id.not_blank=UI元素引用元素模块ID不能为空
|
|
||||||
ui_element_reference.scenario_id.length_range=UI元素引用场景ID长度范围为{min}到{max}
|
|
||||||
ui_element_reference.scenario_id.not_blank=UI元素引用场景ID不能为空
|
|
||||||
ui_element_reference.project_id.length_range=UI元素引用项目ID长度范围为{min}到{max}
|
|
||||||
ui_element_reference.project_id.not_blank=UI元素引用项目ID不能为空
|
|
||||||
ui_scenario_report.id.not_blank=UI场景报告ID不能为空
|
|
||||||
ui_scenario_report.project_id.length_range=UI场景报告项目ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.project_id.not_blank=UI场景报告项目ID不能为空
|
|
||||||
ui_scenario_report.name.length_range=UI场景报告名称长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.name.not_blank=UI场景报告名称不能为空
|
|
||||||
ui_scenario_report.status.length_range=UI场景报告状态长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.status.not_blank=UI场景报告状态不能为空
|
|
||||||
ui_scenario_report.trigger_mode.length_range=UI场景报告触发模式长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.trigger_mode.not_blank=UI场景报告触发模式不能为空
|
|
||||||
ui_scenario_report.create_user.length_range=UI场景报告创建人长度范围为{min}到{max}
|
|
||||||
ui_scenario_report.create_user.not_blank=UI场景报告创建人不能为空
|
|
||||||
ui_scenario_report_blob.id.not_blank=UI场景报告blob报告ID不能为空
|
|
||||||
ui_scenario.id.not_blank=UI场景ID不能为空
|
|
||||||
ui_scenario.project_id.length_range=UI场景项目ID长度范围为{min}到{max}
|
|
||||||
ui_scenario.project_id.not_blank=UI场景项目ID不能为空
|
|
||||||
ui_scenario.module_id.length_range=UI场景模块ID长度范围为{min}到{max}
|
|
||||||
ui_scenario.module_id.not_blank=UI场景模块ID不能为空
|
|
||||||
ui_scenario.module_path.length_range=UI场景模块路径长度范围为{min}到{max}
|
|
||||||
ui_scenario.module_path.not_blank=UI场景模块路径不能为空
|
|
||||||
ui_scenario.name.length_range=UI场景名称长度范围为{min}到{max}
|
|
||||||
ui_scenario.name.not_blank=UI场景名称不能为空
|
|
||||||
ui_scenario.level.length_range=UI场景级别长度范围为{min}到{max}
|
|
||||||
ui_scenario.level.not_blank=UI场景级别不能为空
|
|
||||||
ui_scenario.status.length_range=UI场景状态长度范围为{min}到{max}
|
|
||||||
ui_scenario.status.not_blank=UI场景状态不能为空
|
|
||||||
ui_scenario.principal.length_range=UI场景负责人长度范围为{min}到{max}
|
|
||||||
ui_scenario.principal.not_blank=UI场景负责人不能为空
|
|
||||||
ui_scenario.deleted.length_range=UI场景删除标志长度范围为{min}到{max}
|
|
||||||
ui_scenario.deleted.not_blank=UI场景删除标志不能为空
|
|
||||||
ui_scenario.create_user.length_range=UI场景创建人长度范围为{min}到{max}
|
|
||||||
ui_scenario.create_user.not_blank=UI场景创建人不能为空
|
|
||||||
ui_scenario.version_id.length_range=UI场景版本ID长度范围为{min}到{max}
|
|
||||||
ui_scenario.version_id.not_blank=UI场景版本ID不能为空
|
|
||||||
ui_scenario.ref_id.length_range=UI场景引用ID长度范围为{min}到{max}
|
|
||||||
ui_scenario.ref_id.not_blank=UI场景引用ID不能为空
|
|
||||||
ui_scenario.latest.length_range=UI场景最新长度范围为{min}到{max}
|
|
||||||
ui_scenario.latest.not_blank=UI场景最新不能为空
|
|
||||||
ui_custom_command.id.not_blank=UI自定义命令ID不能为空
|
|
||||||
ui_custom_command.project_id.length_range=UI自定义命令项目ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command.project_id.not_blank=UI自定义命令项目ID不能为空
|
|
||||||
ui_custom_command.module_id.length_range=UI自定义命令模块ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command.module_id.not_blank=UI自定义命令模块ID不能为空
|
|
||||||
ui_custom_command.module_path.length_range=UI自定义命令模块路径长度范围为{min}到{max}
|
|
||||||
ui_custom_command.module_path.not_blank=UI自定义命令模块路径不能为空
|
|
||||||
ui_custom_command.name.length_range=UI自定义命令名称长度范围为{min}到{max}
|
|
||||||
ui_custom_command.name.not_blank=UI自定义命令名称不能为空
|
|
||||||
ui_custom_command.level.length_range=UI自定义命令级别长度范围为{min}到{max}
|
|
||||||
ui_custom_command.level.not_blank=UI自定义命令级别不能为空
|
|
||||||
ui_custom_command.status.length_range=UI自定义命令状态长度范围为{min}到{max}
|
|
||||||
ui_custom_command.status.not_blank=UI自定义命令状态不能为空
|
|
||||||
ui_custom_command.principal.length_range=UI自定义命令负责人长度范围为{min}到{max}
|
|
||||||
ui_custom_command.principal.not_blank=UI自定义命令负责人不能为空
|
|
||||||
ui_custom_command.deleted.length_range=UI自定义命令删除标志长度范围为{min}到{max}
|
|
||||||
ui_custom_command.deleted.not_blank=UI自定义命令删除标志不能为空
|
|
||||||
ui_custom_command.create_user.length_range=UI自定义命令创建人长度范围为{min}到{max}
|
|
||||||
ui_custom_command.create_user.not_blank=UI自定义命令创建人不能为空
|
|
||||||
ui_custom_command.version_id.length_range=UI自定义命令版本ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command.version_id.not_blank=UI自定义命令版本ID不能为空
|
|
||||||
ui_custom_command.ref_id.length_range=UI自定义命令引用ID长度范围为{min}到{max}
|
|
||||||
ui_custom_command.ref_id.not_blank=UI自定义命令引用ID不能为空
|
|
||||||
ui_custom_command.latest.length_range=UI自定义命令最新长度范围为{min}到{max}
|
|
||||||
ui_custom_command.latest.not_blank=UI自定义命令最新不能为空
|
|
||||||
ui_scenario_execution_info.id.not_blank=UI场景执行信息ID不能为空
|
|
||||||
ui_scenario_execution_info.source_id.length_range=UI场景执行信息来源ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_execution_info.source_id.not_blank=UI场景执行信息来源ID不能为空
|
|
||||||
ui_scenario_execution_info.result.length_range=UI场景执行信息结果长度范围为{min}到{max}
|
|
||||||
ui_scenario_execution_info.result.not_blank=UI场景执行信息结果不能为空
|
|
||||||
ui_scenario_module.id.not_blank=UI场景模块ID不能为空
|
|
||||||
ui_scenario_module.project_id.length_range=UI场景模块项目ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.project_id.not_blank=UI场景模块项目ID不能为空
|
|
||||||
ui_scenario_module.name.length_range=UI场景模块名称长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.name.not_blank=UI场景模块名称不能为空
|
|
||||||
ui_scenario_module.parent_id.length_range=UI场景模块父ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.parent_id.not_blank=UI场景模块父ID不能为空
|
|
||||||
ui_scenario_module.pos.length_range=UI场景模块位置长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.pos.not_blank=UI场景模块位置不能为空
|
|
||||||
ui_scenario_module.create_user.length_range=UI场景模块创建人长度范围为{min}到{max}
|
|
||||||
ui_scenario_module.create_user.not_blank=UI场景模块创建人不能为空
|
|
||||||
ui_scenario_reference.id.not_blank=UI场景引用ID不能为空
|
|
||||||
ui_scenario_reference.ui_scenario_id.length_range=UI场景引用UI场景ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_reference.ui_scenario_id.not_blank=UI场景引用UI场景ID不能为空
|
|
||||||
ui_scenario_reference.create_user.length_range=UI场景引用创建人长度范围为{min}到{max}
|
|
||||||
ui_scenario_reference.create_user.not_blank=UI场景引用创建人不能为空
|
|
||||||
ui_scenario_reference.reference_id.length_range=UI场景引用引用ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_reference.reference_id.not_blank=UI场景引用引用ID不能为空
|
|
||||||
ui_scenario_reference.data_type.length_range=UI场景引用数据类型长度范围为{min}到{max}
|
|
||||||
ui_scenario_reference.data_type.not_blank=UI场景引用数据类型不能为空
|
|
||||||
ui_custom_command_blob.id.not_blank=UI自定义命令场景ID不能为空
|
|
||||||
ui_scenario_report_structure.id.not_blank=UI场景报告结构ID不能为空
|
|
||||||
ui_scenario_report_structure.report_id.length_range=UI场景报告结构报告ID长度范围为{min}到{max}
|
|
||||||
ui_scenario_report_structure.report_id.not_blank=UI场景报告结构报告ID不能为空
|
|
||||||
ui_scenario_blob.id.not_blank=UI场景场景ID不能为空
|
|
|
@ -1,151 +0,0 @@
|
||||||
ui_scenario_report_result.id.not_blankUI=場景報告結果ID不能為空
|
|
||||||
ui_scenario_report_result.resource_id.length_range=UI場景報告結果資源ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report_result.resource_id.not_blank=UI場景報告結果資源ID不能為空
|
|
||||||
ui_scenario_report_result.report_id.length_range=UI場景報告結果報告ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report_result.report_id.not_blank=UI場景報告結果報告ID不能為空
|
|
||||||
ui_scenario_report_result.status.length_range=UI場景報告結果狀態長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report_result.status.not_blank=UI場景報告結果狀態不能為空
|
|
||||||
ui_custom_command_module.id.not_blank=UI自定義指令模塊ID不能為空
|
|
||||||
ui_custom_command_module.project_id.length_range=UI自定義指令模塊項目ID長度範圍為{min}到{max}
|
|
||||||
ui_custom_command_module.project_id.not_blank=UI自定義指令模塊項目ID不能為空
|
|
||||||
ui_custom_command_module.name.length_range=UI自定義指令模塊名稱長度範圍為{min}到{max}
|
|
||||||
ui_custom_command_module.name.not_blank=UI自定義指令模塊名稱不能為空
|
|
||||||
ui_custom_command_module.parent_id.length_range=UI自定義指令模塊父ID長度範圍為{min}到{max}
|
|
||||||
ui_custom_command_module.parent_id.not_blank=UI自定義指令模塊父ID不能為空
|
|
||||||
ui_custom_command_module.pos.length_range=UI自定義指令模塊位置長度範圍為{min}到{max}
|
|
||||||
ui_custom_command_module.pos.not_blank=UI自定義指令模塊位置不能為空
|
|
||||||
ui_custom_command_module.create_user.length_range=UI自定義指令模塊創建人長度範圍為{min}到{max}
|
|
||||||
ui_custom_command_module.create_user.not_blank=UI自定義指令模塊創建人不能為空
|
|
||||||
ui_element_module.id.not_blank=UI元素模塊ID不能為空
|
|
||||||
ui_element_module.project_id.length_range=UI元素模塊項目ID長度範圍為{min}到{max}
|
|
||||||
ui_element_module.project_id.not_blank=UI元素模塊項目ID不能為空
|
|
||||||
ui_element_module.name.length_range=UI元素模塊名稱長度範圍為{min}到{max}
|
|
||||||
ui_element_module.name.not_blank=UI元素模塊名稱不能為空
|
|
||||||
ui_element_module.parent_id.length_range=UI元素模塊父ID長度範圍為{min}到{max}
|
|
||||||
ui_element_module.parent_id.not_blank=UI元素模塊父ID不能為空
|
|
||||||
ui_element_module.pos.length_range=UI元素模塊位置長度範圍為{min}到{max}
|
|
||||||
ui_element_module.pos.not_blank=UI元素模塊位置不能為空
|
|
||||||
ui_element_module.create_user.length_range=UI元素模塊創建人長度範圍為{min}到{max}
|
|
||||||
ui_element_module.create_user.not_blank=UI元素模塊創建人不能為空
|
|
||||||
ui_element.id.not_blank=UI元素ID不能為空
|
|
||||||
ui_element.module_id.length_range=UI元素模塊ID長度範圍為{min}到{max}
|
|
||||||
ui_element.module_id.not_blank=UI元素模塊ID不能為空
|
|
||||||
ui_element.project_id.length_range=UI元素項目ID長度範圍為{min}到{max}
|
|
||||||
ui_element.project_id.not_blank=UI元素項目ID不能為空
|
|
||||||
ui_element.name.length_range=UI元素名稱長度範圍為{min}到{max}
|
|
||||||
ui_element.name.not_blank=UI元素名稱不能為空
|
|
||||||
ui_element.location_type.length_range=UI元素位置類型長度範圍為{min}到{max}
|
|
||||||
ui_element.location_type.not_blank=UI元素位置類型不能為空
|
|
||||||
ui_element.location.length_range=UI元素位置長度範圍為{min}到{max}
|
|
||||||
ui_element.location.not_blank=UI元素位置不能為空
|
|
||||||
ui_element.create_user.length_range=UI元素創建人長度範圍為{min}到{max}
|
|
||||||
ui_element.create_user.not_blank=UI元素創建人不能為空
|
|
||||||
ui_element.update_user.length_range=UI元素更新人長度範圍為{min}到{max}
|
|
||||||
ui_element.update_user.not_blank=UI元素更新人不能為空
|
|
||||||
ui_element.version_id.length_range=UI元素版本ID長度範圍為{min}到{max}
|
|
||||||
ui_element.version_id.not_blank=UI元素版本ID不能為空
|
|
||||||
ui_element.ref_id.length_range=UI元素引用ID長度範圍為{min}到{max}
|
|
||||||
ui_element.ref_id.not_blank=UI元素引用ID不能為空
|
|
||||||
ui_element.latest.length_range=UI元素最新長度範圍為{min}到{max}
|
|
||||||
ui_element.latest.not_blank=UI元素最新不能為空
|
|
||||||
ui_element_reference.id.not_blank=UI元素引用ID不能為空
|
|
||||||
ui_element_reference.element_id.length_range=UI元素引用元素ID長度範圍為{min}到{max}
|
|
||||||
ui_element_reference.element_id.not_blank=UI元素引用元素ID不能為空
|
|
||||||
ui_element_reference.element_module_id.length_range=UI元素引用元素模塊ID長度範圍為{min}到{max}
|
|
||||||
ui_element_reference.element_module_id.not_blank=UI元素引用元素模塊ID不能為空
|
|
||||||
ui_element_reference.scenario_id.length_range=UI元素引用場景ID長度範圍為{min}到{max}
|
|
||||||
ui_element_reference.scenario_id.not_blank=UI元素引用場景ID不能為空
|
|
||||||
ui_element_reference.project_id.length_range=UI元素引用項目ID長度範圍為{min}到{max}
|
|
||||||
ui_element_reference.project_id.not_blank=UI元素引用項目ID不能為空
|
|
||||||
ui_scenario_report.id.not_blank=UI場景報告ID不能為空
|
|
||||||
ui_scenario_report.project_id.length_range=UI場景報告項目ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report.project_id.not_blank=UI場景報告項目ID不能為空
|
|
||||||
ui_scenario_report.name.length_range=UI場景報告名稱長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report.name.not_blank=UI場景報告名稱不能為空
|
|
||||||
ui_scenario_report.status.length_range=UI場景報告狀態長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report.status.not_blank=UI場景報告狀態不能為空
|
|
||||||
ui_scenario_report.trigger_mode.length_range=UI場景報告觸發模式長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report.trigger_mode.not_blank=UI場景報告觸發模式不能為空
|
|
||||||
ui_scenario_report.create_user.length_range=UI場景報告創建人長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report.create_user.not_blank=UI場景報告創建人不能為空
|
|
||||||
ui_scenario_report_blob.id.not_blank=UI場景報告blob報告ID不能為空
|
|
||||||
ui_scenario.id.not_blank=UI場景ID不能為空
|
|
||||||
ui_scenario.project_id.length_range=UI場景項目ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario.project_id.not_blank=UI場景項目ID不能為空
|
|
||||||
ui_scenario.module_id.length_range=UI場景模塊ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario.module_id.not_blank=UI場景模塊ID不能為空
|
|
||||||
ui_scenario.module_path.length_range=UI場景模塊路徑長度範圍為{min}到{max}
|
|
||||||
ui_scenario.module_path.not_blank=UI場景模塊路徑不能為空
|
|
||||||
ui_scenario.name.length_range=UI場景名稱長度範圍為{min}到{max}
|
|
||||||
ui_scenario.name.not_blank=UI場景名稱不能為空
|
|
||||||
ui_scenario.level.length_range=UI場景級別長度範圍為{min}到{max}
|
|
||||||
ui_scenario.level.not_blank=UI場景級別不能為空
|
|
||||||
ui_scenario.status.length_range=UI場景狀態長度範圍為{min}到{max}
|
|
||||||
ui_scenario.status.not_blank=UI場景狀態不能為空
|
|
||||||
ui_scenario.principal.length_range=UI場景負責人長度範圍為{min}到{max}
|
|
||||||
ui_scenario.principal.not_blank=UI場景負責人不能為空
|
|
||||||
ui_scenario.deleted.length_range=UI場景刪除標誌長度範圍為{min}到{max}
|
|
||||||
ui_scenario.deleted.not_blank=UI場景刪除標誌不能為空
|
|
||||||
ui_scenario.create_user.length_range=UI場景創建人長度範圍為{min}到{max}
|
|
||||||
ui_scenario.create_user.not_blank=UI場景創建人不能為空
|
|
||||||
ui_scenario.version_id.length_range=UI場景版本ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario.version_id.not_blank=UI場景版本ID不能為空
|
|
||||||
ui_scenario.ref_id.length_range=UI場景引用ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario.ref_id.not_blank=UI場景引用ID不能為空
|
|
||||||
ui_scenario.latest.length_range=UI場景最新長度範圍為{min}到{max}
|
|
||||||
ui_scenario.latest.not_blank=UI場景最新不能為空
|
|
||||||
ui_custom_command.id.not_blank=UI自定義命令ID不能為空
|
|
||||||
ui_custom_command.project_id.length_range=UI自定義命令項目ID長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.project_id.not_blank=UI自定義命令項目ID不能為空
|
|
||||||
ui_custom_command.module_id.length_range=UI自定義命令模塊ID長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.module_id.not_blank=UI自定義命令模塊ID不能為空
|
|
||||||
ui_custom_command.module_path.length_range=UI自定義命令模塊路徑長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.module_path.not_blank=UI自定義命令模塊路徑不能為空
|
|
||||||
ui_custom_command.name.length_range=UI自定義命令名稱長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.name.not_blank=UI自定義命令名稱不能為空
|
|
||||||
ui_custom_command.level.length_range=UI自定義命令級別長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.level.not_blank=UI自定義命令級別不能為空
|
|
||||||
ui_custom_command.status.length_range=UI自定義命令狀態長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.status.not_blank=UI自定義命令狀態不能為空
|
|
||||||
ui_custom_command.principal.length_range=UI自定義命令負責人長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.principal.not_blank=UI自定義命令負責人不能為空
|
|
||||||
ui_custom_command.deleted.length_range=UI自定義命令刪除標誌長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.deleted.not_blank=UI自定義命令刪除標誌不能為空
|
|
||||||
ui_custom_command.create_user.length_range=UI自定義命令創建人長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.create_user.not_blank=UI自定義命令創建人不能為空
|
|
||||||
ui_custom_command.version_id.length_range=UI自定義命令版本ID長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.version_id.not_blank=UI自定義命令版本ID不能為空
|
|
||||||
ui_custom_command.ref_id.length_range=UI自定義命令引用ID長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.ref_id.not_blank=UI自定義命令引用ID不能為空
|
|
||||||
ui_custom_command.latest.length_range=UI自定義命令最新長度範圍為{min}到{max}
|
|
||||||
ui_custom_command.latest.not_blank=UI自定義命令最新不能為空
|
|
||||||
ui_scenario_execution_info.id.not_blank=UI場景執行信息ID不能為空
|
|
||||||
ui_scenario_execution_info.source_id.length_range=UI場景執行信息來源ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_execution_info.source_id.not_blank=UI場景執行信息來源ID不能為空
|
|
||||||
ui_scenario_execution_info.result.length_range=UI場景執行信息結果長度範圍為{min}到{max}
|
|
||||||
ui_scenario_execution_info.result.not_blank=UI場景執行信息結果不能為空
|
|
||||||
ui_scenario_module.id.not_blank=UI場景模塊ID不能為空
|
|
||||||
ui_scenario_module.project_id.length_range=UI場景模塊項目ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_module.project_id.not_blank=UI場景模塊項目ID不能為空
|
|
||||||
ui_scenario_module.name.length_range=UI場景模塊名稱長度範圍為{min}到{max}
|
|
||||||
ui_scenario_module.name.not_blank=UI場景模塊名稱不能為空
|
|
||||||
ui_scenario_module.parent_id.length_range=UI場景模塊父ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_module.parent_id.not_blank=UI場景模塊父ID不能為空
|
|
||||||
ui_scenario_module.pos.length_range=UI場景模塊位置長度範圍為{min}到{max}
|
|
||||||
ui_scenario_module.pos.not_blank=UI場景模塊位置不能為空
|
|
||||||
ui_scenario_module.create_user.length_range=UI場景模塊創建人長度範圍為{min}到{max}
|
|
||||||
ui_scenario_module.create_user.not_blank=UI場景模塊創建人不能為空
|
|
||||||
ui_scenario_reference.id.not_blank=UI場景引用ID不能為空
|
|
||||||
ui_scenario_reference.ui_scenario_id.length_range=UI場景引用UI場景ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_reference.ui_scenario_id.not_blank=UI場景引用UI場景ID不能為空
|
|
||||||
ui_scenario_reference.create_user.length_range=UI場景引用創建人長度範圍為{min}到{max}
|
|
||||||
ui_scenario_reference.create_user.not_blank=UI場景引用創建人不能為空
|
|
||||||
ui_scenario_reference.reference_id.length_range=UI場景引用引用ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_reference.reference_id.not_blank=UI場景引用引用ID不能為空
|
|
||||||
ui_scenario_reference.data_type.length_range=UI場景引用數據類型長度範圍為{min}到{max}
|
|
||||||
ui_scenario_reference.data_type.not_blank=UI場景引用數據類型不能為空
|
|
||||||
ui_custom_command_blob.id.not_blank=UI自定義命令場景ID不能為空
|
|
||||||
ui_scenario_report_structure.id.not_blank=UI場景報告結構ID不能為空
|
|
||||||
ui_scenario_report_structure.report_id.length_range=UI場景報告結構報告ID長度範圍為{min}到{max}
|
|
||||||
ui_scenario_report_structure.report_id.not_blank=UI場景報告結構報告ID不能為空
|
|
||||||
ui_scenario_blob.id.not_blank=UI場景場景ID不能為空
|
|
|
@ -285,7 +285,6 @@ public class ApiTaskCenterControllerTests extends BaseTest {
|
||||||
|
|
||||||
TestResourcePoolDTO testResourcePool = new TestResourcePoolDTO();
|
TestResourcePoolDTO testResourcePool = new TestResourcePoolDTO();
|
||||||
testResourcePool.setId("api-pool-id");
|
testResourcePool.setId("api-pool-id");
|
||||||
testResourcePool.setApiTest(true);
|
|
||||||
testResourcePool.setCreateTime(System.currentTimeMillis());
|
testResourcePool.setCreateTime(System.currentTimeMillis());
|
||||||
testResourcePool.setUpdateTime(System.currentTimeMillis());
|
testResourcePool.setUpdateTime(System.currentTimeMillis());
|
||||||
testResourcePool.setDeleted(false);
|
testResourcePool.setDeleted(false);
|
||||||
|
|
|
@ -138,8 +138,6 @@ public class KubernetesEngineTests extends BaseTest {
|
||||||
TestResourceDTO testResourceDTO = testResourcePool.getTestResourceDTO();
|
TestResourceDTO testResourceDTO = testResourcePool.getTestResourceDTO();
|
||||||
testResourcePoolService.checkAndSaveOrgRelation(testResourcePool, id, testResourceDTO);
|
testResourcePoolService.checkAndSaveOrgRelation(testResourcePool, id, testResourceDTO);
|
||||||
testResourcePoolService.checkApiConfig(testResourceDTO, testResourcePool, testResourcePool.getType());
|
testResourcePoolService.checkApiConfig(testResourceDTO, testResourcePool, testResourcePool.getType());
|
||||||
testResourcePoolService.checkLoadConfig(testResourceDTO, testResourcePool, testResourcePool.getType());
|
|
||||||
testResourcePoolService.checkUiConfig(testResourceDTO, testResourcePool);
|
|
||||||
if (CollectionUtils.isEmpty(testResourceDTO.getNodesList())) {
|
if (CollectionUtils.isEmpty(testResourceDTO.getNodesList())) {
|
||||||
testResourceDTO.setNodesList(new ArrayList<>());
|
testResourceDTO.setNodesList(new ArrayList<>());
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,6 @@ public class BaseResourcePoolTestService {
|
||||||
String id = IDGenerator.nextStr();
|
String id = IDGenerator.nextStr();
|
||||||
TestResourcePoolDTO testResourcePool = new TestResourcePoolDTO();
|
TestResourcePoolDTO testResourcePool = new TestResourcePoolDTO();
|
||||||
testResourcePool.setId(id);
|
testResourcePool.setId(id);
|
||||||
testResourcePool.setApiTest(true);
|
|
||||||
testResourcePool.setCreateTime(System.currentTimeMillis());
|
testResourcePool.setCreateTime(System.currentTimeMillis());
|
||||||
testResourcePool.setUpdateTime(System.currentTimeMillis());
|
testResourcePool.setUpdateTime(System.currentTimeMillis());
|
||||||
testResourcePool.setDeleted(false);
|
testResourcePool.setDeleted(false);
|
||||||
|
|
|
@ -25,10 +25,10 @@ public class RoundRobinServiceTests {
|
||||||
@Order(1)
|
@Order(1)
|
||||||
public void testInit() throws Exception {
|
public void testInit() throws Exception {
|
||||||
List<TestResourceNodeDTO> nodes = new LinkedList<>();
|
List<TestResourceNodeDTO> nodes = new LinkedList<>();
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.1", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.1", "8080", 10));
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.2", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.2", "8080", 10));
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.3", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.3", "8080", 10));
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.4", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.4", "8080", 10));
|
||||||
|
|
||||||
roundRobinService.initializeNodes("test", nodes);
|
roundRobinService.initializeNodes("test", nodes);
|
||||||
}
|
}
|
||||||
|
@ -49,14 +49,14 @@ public class RoundRobinServiceTests {
|
||||||
@Order(3)
|
@Order(3)
|
||||||
public void testInitAfter() throws Exception {
|
public void testInitAfter() throws Exception {
|
||||||
List<TestResourceNodeDTO> nodes = new LinkedList<>();
|
List<TestResourceNodeDTO> nodes = new LinkedList<>();
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.1", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.1", "8080", 10));
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.2", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.2", "8080", 10));
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.3", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.3", "8080", 10));
|
||||||
roundRobinService.initializeNodes("test", nodes);
|
roundRobinService.initializeNodes("test", nodes);
|
||||||
|
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.3", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.3", "8080", 10));
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.7", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.7", "8080", 10));
|
||||||
nodes.add(new TestResourceNodeDTO("172.0.0.6", "8080", null, 10));
|
nodes.add(new TestResourceNodeDTO("172.0.0.6", "8080", 10));
|
||||||
roundRobinService.initializeNodes("test", nodes);
|
roundRobinService.initializeNodes("test", nodes);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,7 +66,7 @@ jmeter.home=/opt/jmeter
|
||||||
spring.servlet.multipart.max-file-size=500MB
|
spring.servlet.multipart.max-file-size=500MB
|
||||||
spring.servlet.multipart.max-request-size=500MB
|
spring.servlet.multipart.max-request-size=500MB
|
||||||
# i18n
|
# i18n
|
||||||
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/load,i18n/plan,i18n/project,i18n/system,i18n/ui,i18n/workstation
|
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/plan,i18n/project,i18n/system
|
||||||
# actuator
|
# actuator
|
||||||
management.endpoints.web.exposure.include=*
|
management.endpoints.web.exposure.include=*
|
||||||
management.endpoints.enabled-by-default=false
|
management.endpoints.enabled-by-default=false
|
||||||
|
|
|
@ -111,7 +111,7 @@ INSERT INTO `api_test_case_record` (`api_report_id`, `api_test_case_id`) VALUES
|
||||||
INSERT INTO `api_test_case_record` (`api_report_id`, `api_test_case_id`) VALUES ('9', 'resource_9');
|
INSERT INTO `api_test_case_record` (`api_report_id`, `api_test_case_id`) VALUES ('9', 'resource_9');
|
||||||
|
|
||||||
DELETE FROM `test_resource_pool` WHERE `id` in ('100660357777795313');
|
DELETE FROM `test_resource_pool` WHERE `id` in ('100660357777795313');
|
||||||
INSERT INTO `test_resource_pool` (`id`, `name`, `type`, `description`, `enable`, `create_time`, `update_time`, `create_user`, `api_test`, `load_test`, `ui_test`, `server_url`, `all_org`, `deleted`) VALUES ('100660357777795313', 'LOCAL', 'Node', '测试资源池', b'1', 1705894549000, 1705894549000, 'admin', b'1', b'1', b'1', NULL, b'1', b'0');
|
INSERT INTO `test_resource_pool` (`id`, `name`, `type`, `description`, `enable`, `create_time`, `update_time`, `create_user`, `server_url`, `all_org`, `deleted`) VALUES ('100660357777795313', 'LOCAL', 'Node', '测试资源池', b'1', 1705894549000, 1705894549000, 'admin', NULL, b'1', b'0');
|
||||||
|
|
||||||
DELETE FROM `api_scenario` WHERE `id` in ('1', '2', '3', '4','5','6', '7', '8', '9');
|
DELETE FROM `api_scenario` WHERE `id` in ('1', '2', '3', '4','5','6', '7', '8', '9');
|
||||||
INSERT INTO `api_scenario` (`id`, `name`, `priority`, `status`, `step_total`, `request_pass_rate`, `last_report_status`, `last_report_id`, `num`, `deleted`, `pos`, `version_id`, `ref_id`, `latest`, `project_id`, `module_id`, `description`, `tags`, `grouped`, `environment_id`, `create_user`, `create_time`, `delete_time`, `delete_user`, `update_user`, `update_time`) VALUES ('1', 'Scenario 1', 'P0', 'Completed', 10, '95%', 'Passed', 'report_1', 1001, b'0', 1, 'version_1', 'ref_1', b'1', '100001100001', 'module_1', 'Description 1', '[\"tag1\",\"tag2\"]', b'0', 'env_1', 'admin', 1640772861000, NULL, NULL, 'admin', 1640772861000);
|
INSERT INTO `api_scenario` (`id`, `name`, `priority`, `status`, `step_total`, `request_pass_rate`, `last_report_status`, `last_report_id`, `num`, `deleted`, `pos`, `version_id`, `ref_id`, `latest`, `project_id`, `module_id`, `description`, `tags`, `grouped`, `environment_id`, `create_user`, `create_time`, `delete_time`, `delete_user`, `update_user`, `update_time`) VALUES ('1', 'Scenario 1', 'P0', 'Completed', 10, '95%', 'Passed', 'report_1', 1001, b'0', 1, 'version_1', 'ref_1', b'1', '100001100001', 'module_1', 'Description 1', '[\"tag1\",\"tag2\"]', b'0', 'env_1', 'admin', 1640772861000, NULL, NULL, 'admin', 1640772861000);
|
||||||
|
|
|
@ -62,7 +62,7 @@ jmeter.home=/opt/jmeter
|
||||||
spring.servlet.multipart.max-file-size=500MB
|
spring.servlet.multipart.max-file-size=500MB
|
||||||
spring.servlet.multipart.max-request-size=500MB
|
spring.servlet.multipart.max-request-size=500MB
|
||||||
# i18n
|
# i18n
|
||||||
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/load,i18n/plan,i18n/project,i18n/system,i18n/ui,i18n/workstation
|
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/plan,i18n/project,i18n/system
|
||||||
# actuator
|
# actuator
|
||||||
management.endpoints.web.exposure.include=*
|
management.endpoints.web.exposure.include=*
|
||||||
management.endpoints.enabled-by-default=false
|
management.endpoints.enabled-by-default=false
|
||||||
|
|
|
@ -59,7 +59,7 @@ jmeter.home=/opt/jmeter
|
||||||
spring.servlet.multipart.max-file-size=500MB
|
spring.servlet.multipart.max-file-size=500MB
|
||||||
spring.servlet.multipart.max-request-size=500MB
|
spring.servlet.multipart.max-request-size=500MB
|
||||||
# i18n
|
# i18n
|
||||||
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/load,i18n/plan,i18n/project,i18n/system,i18n/ui,i18n/workstation
|
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/plan,i18n/project,i18n/system
|
||||||
# actuator
|
# actuator
|
||||||
management.endpoints.web.exposure.include=*
|
management.endpoints.web.exposure.include=*
|
||||||
management.endpoints.enabled-by-default=false
|
management.endpoints.enabled-by-default=false
|
||||||
|
|
|
@ -64,63 +64,6 @@ public class ProjectApplicationController {
|
||||||
return projectApplicationService.get(request, types);
|
return projectApplicationService.get(request, types);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ==========UI测试==========
|
|
||||||
*/
|
|
||||||
|
|
||||||
@PostMapping("/update/ui")
|
|
||||||
@Operation(summary = "UI测试-配置")
|
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_UI_UPDATE)
|
|
||||||
@Log(type = OperationLogType.UPDATE, expression = "#msClass.updateUiLog(#application)", msClass = ProjectApplicationService.class)
|
|
||||||
public void updateUI(@Validated({Updated.class}) @RequestBody ProjectApplication application) {
|
|
||||||
projectApplicationService.update(application, SessionUtils.getUserId());
|
|
||||||
}
|
|
||||||
|
|
||||||
@PostMapping("/ui")
|
|
||||||
@Operation(summary = "UI测试-获取配置")
|
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_UI_READ)
|
|
||||||
public Map<String, Object> getUI(@Validated @RequestBody ProjectApplicationRequest request) {
|
|
||||||
List<String> types = Arrays.stream(ProjectApplicationType.UI.values()).map(ProjectApplicationType.UI::name).collect(Collectors.toList());
|
|
||||||
return projectApplicationService.get(request, types);
|
|
||||||
}
|
|
||||||
|
|
||||||
@GetMapping("/ui/resource/pool/{projectId}")
|
|
||||||
@Operation(summary = "UI测试-获取资源池列表")
|
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_UI_READ)
|
|
||||||
public List<OptionDTO> getUiPoolOptions(@PathVariable String projectId) {
|
|
||||||
return new ArrayList<>();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ==========性能测试==========
|
|
||||||
*/
|
|
||||||
|
|
||||||
@PostMapping("/update/performance-test")
|
|
||||||
@Operation(summary = "性能测试-配置")
|
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_PERFORMANCE_TEST_UPDATE)
|
|
||||||
@Log(type = OperationLogType.UPDATE, expression = "#msClass.updatePerformanceLog(#application)", msClass = ProjectApplicationService.class)
|
|
||||||
public void updatePerformanceTest(@Validated({Updated.class}) @RequestBody ProjectApplication application) {
|
|
||||||
projectApplicationService.update(application, SessionUtils.getUserId());
|
|
||||||
}
|
|
||||||
|
|
||||||
@PostMapping("/performance-test")
|
|
||||||
@Operation(summary = "性能测试-获取配置")
|
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_PERFORMANCE_TEST_READ)
|
|
||||||
public Map<String, Object> getPerformanceTest(@Validated @RequestBody ProjectApplicationRequest request) {
|
|
||||||
List<String> types = Arrays.stream(ProjectApplicationType.LOAD_TEST.values()).map(ProjectApplicationType.LOAD_TEST::name).collect(Collectors.toList());
|
|
||||||
return projectApplicationService.get(request, types);
|
|
||||||
}
|
|
||||||
|
|
||||||
@GetMapping("/performance-test/user/{projectId}")
|
|
||||||
@Operation(summary = "性能测试-获取审核人")
|
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_PERFORMANCE_TEST_READ)
|
|
||||||
public List<User> getReviewerUser(@PathVariable String projectId) {
|
|
||||||
return projectApplicationService.getProjectUserList(StringUtils.defaultIfBlank(projectId, SessionUtils.getCurrentProjectId()));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ==========接口测试==========
|
* ==========接口测试==========
|
||||||
*/
|
*/
|
||||||
|
@ -156,7 +99,7 @@ public class ProjectApplicationController {
|
||||||
@Operation(summary = "接口测试-获取资源池列表")
|
@Operation(summary = "接口测试-获取资源池列表")
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_API_READ)
|
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_API_READ)
|
||||||
public List<OptionDTO> getApiPoolOptions(@PathVariable String projectId) {
|
public List<OptionDTO> getApiPoolOptions(@PathVariable String projectId) {
|
||||||
return projectService.getPoolOptions(projectId, ApplicationScope.API_TEST);
|
return projectService.getPoolOptions(projectId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -220,28 +163,6 @@ public class ProjectApplicationController {
|
||||||
return projectApplicationService.getRelatedConfigInfo(projectId);
|
return projectApplicationService.getRelatedConfigInfo(projectId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ==========工作台==========
|
|
||||||
*/
|
|
||||||
|
|
||||||
@PostMapping("/update/workstation")
|
|
||||||
@Operation(summary = "工作台-配置")
|
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_WORKSTATION_UPDATE)
|
|
||||||
@Log(type = OperationLogType.UPDATE, expression = "#msClass.updateWorkstationLog(#application)", msClass = ProjectApplicationService.class)
|
|
||||||
public void updateWorkstation(@Validated({Updated.class}) @RequestBody ProjectApplication application) {
|
|
||||||
projectApplicationService.update(application, SessionUtils.getUserId());
|
|
||||||
}
|
|
||||||
|
|
||||||
@PostMapping("/workstation")
|
|
||||||
@Operation(summary = "工作台-获取配置")
|
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_APPLICATION_WORKSTATION_READ)
|
|
||||||
public Map<String, Object> getWorkstation(@Validated @RequestBody ProjectApplicationRequest request) {
|
|
||||||
List<String> types = Arrays.asList(ProjectApplicationType.WORKSTATION.values()).stream().map(ProjectApplicationType.WORKSTATION::name).collect(Collectors.toList());
|
|
||||||
return projectApplicationService.get(request, types);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ==========缺陷管理==========
|
* ==========缺陷管理==========
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -76,7 +76,7 @@ public class ProjectController {
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_BASE_INFO_READ)
|
@RequiresPermissions(PermissionConstants.PROJECT_BASE_INFO_READ)
|
||||||
@CheckOwner(resourceId = "#projectId", resourceType = "project")
|
@CheckOwner(resourceId = "#projectId", resourceType = "project")
|
||||||
public List<OptionDTO> getPoolOptions(@PathVariable String type, @PathVariable String projectId) {
|
public List<OptionDTO> getPoolOptions(@PathVariable String type, @PathVariable String projectId) {
|
||||||
return projectService.getPoolOptions(projectId, type);
|
return projectService.getPoolOptions(projectId);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/has-permission/{id}")
|
@GetMapping("/has-permission/{id}")
|
||||||
|
|
|
@ -19,11 +19,11 @@ public interface ExtProjectMapper {
|
||||||
|
|
||||||
List<Project> getProjectByOrgId(@Param("userId") String userId, @Param("organizationId") String organizationId);
|
List<Project> getProjectByOrgId(@Param("userId") String userId, @Param("organizationId") String organizationId);
|
||||||
|
|
||||||
int resourcePoolIsExist(@Param("poolId") String poolId, @Param("projectId") String projectId, @Param("type") String type);
|
int resourcePoolIsExist(@Param("poolId") String poolId, @Param("projectId") String projectId);
|
||||||
|
|
||||||
int resourcePoolIsExistByOrg(@Param("poolId") String string, @Param("projectId") String projectId, @Param("type") String type);
|
int resourcePoolIsExistByOrg(@Param("poolId") String string, @Param("projectId") String projectId);
|
||||||
|
|
||||||
List<ProjectTestResourcePool> getResourcePool(@Param("projectId") String projectId, @Param("type") String type);
|
List<ProjectTestResourcePool> getResourcePool(@Param("projectId") String projectId);
|
||||||
|
|
||||||
List<Project> getAllProject(@Param("organizationId") String organizationId);
|
List<Project> getAllProject(@Param("organizationId") String organizationId);
|
||||||
List<TestResourcePool> getResourcePoolOption(@Param("projectId") String projectId, @Param("type") String type);
|
List<TestResourcePool> getResourcePoolOption(@Param("projectId") String projectId, @Param("type") String type);
|
||||||
|
|
|
@ -58,14 +58,14 @@
|
||||||
select count(t.id) from test_resource_pool t left join project_test_resource_pool p on
|
select count(t.id) from test_resource_pool t left join project_test_resource_pool p on
|
||||||
t.id = p.test_resource_pool_id
|
t.id = p.test_resource_pool_id
|
||||||
where p.project_id = #{projectId} and t.id = #{poolId}
|
where p.project_id = #{projectId} and t.id = #{poolId}
|
||||||
and t.${type} = 1 and t.enable = 1 and t.deleted = 0
|
and t.enable = 1 and t.deleted = 0
|
||||||
</select>
|
</select>
|
||||||
<select id="resourcePoolIsExistByOrg" resultType="java.lang.Integer">
|
<select id="resourcePoolIsExistByOrg" resultType="java.lang.Integer">
|
||||||
select count(t.id) from test_resource_pool_organization o
|
select count(t.id) from test_resource_pool_organization o
|
||||||
left join test_resource_pool t on t.id = o.test_resource_pool_id
|
left join test_resource_pool t on t.id = o.test_resource_pool_id
|
||||||
left join project_test_resource_pool p on t.id = p.test_resource_pool_id
|
left join project_test_resource_pool p on t.id = p.test_resource_pool_id
|
||||||
where p.project_id = #{projectId} and t.id = #{poolId}
|
where p.project_id = #{projectId} and t.id = #{poolId}
|
||||||
and t.${type} = 1 and t.enable = 1 and t.deleted = 0
|
and t.enable = 1 and t.deleted = 0
|
||||||
</select>
|
</select>
|
||||||
<select id="getResourcePool" resultType="io.metersphere.project.domain.ProjectTestResourcePool">
|
<select id="getResourcePool" resultType="io.metersphere.project.domain.ProjectTestResourcePool">
|
||||||
select p.*
|
select p.*
|
||||||
|
@ -74,7 +74,6 @@
|
||||||
where p.project_id = #{projectId}
|
where p.project_id = #{projectId}
|
||||||
and t.enable = 1
|
and t.enable = 1
|
||||||
and t.deleted = 0
|
and t.deleted = 0
|
||||||
and t.${type} = 1
|
|
||||||
</select>
|
</select>
|
||||||
<select id="getAllProject" resultType="io.metersphere.project.domain.Project">
|
<select id="getAllProject" resultType="io.metersphere.project.domain.Project">
|
||||||
select *
|
select *
|
||||||
|
@ -92,7 +91,6 @@
|
||||||
where p.project_id = #{projectId}
|
where p.project_id = #{projectId}
|
||||||
and t.enable = 1
|
and t.enable = 1
|
||||||
and t.deleted = 0
|
and t.deleted = 0
|
||||||
and t.${type} = 1
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getAllProjectWidthModule" resultType="io.metersphere.project.domain.Project">
|
<select id="getAllProjectWidthModule" resultType="io.metersphere.project.domain.Project">
|
||||||
|
|
|
@ -139,21 +139,9 @@ public class ProjectApplicationService {
|
||||||
if (StringUtils.isBlank(type)) {
|
if (StringUtils.isBlank(type)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
switch (type) {
|
if (type.equals("apiTest")) {
|
||||||
case "apiTest" -> {
|
poolType = ProjectApplicationType.API.API_RESOURCE_POOL_ID.name();
|
||||||
poolType = ProjectApplicationType.API.API_RESOURCE_POOL_ID.name();
|
moduleType = "api_test";
|
||||||
moduleType = "api_test";
|
|
||||||
}
|
|
||||||
case "uiTest" -> {
|
|
||||||
poolType = ProjectApplicationType.UI.UI_RESOURCE_POOL_ID.name();
|
|
||||||
moduleType = "ui_test";
|
|
||||||
}
|
|
||||||
case "loadTest" -> {
|
|
||||||
poolType = ProjectApplicationType.LOAD_TEST.LOAD_TEST_RESOURCE_POOL_ID.name();
|
|
||||||
moduleType = "load_test";
|
|
||||||
}
|
|
||||||
default -> {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(poolType) && StringUtils.isNotBlank(moduleType)) {
|
if (StringUtils.isNotBlank(poolType) && StringUtils.isNotBlank(moduleType)) {
|
||||||
if (configMap.containsKey(poolType)) {
|
if (configMap.containsKey(poolType)) {
|
||||||
|
@ -162,17 +150,17 @@ public class ProjectApplicationService {
|
||||||
TestResourcePoolExample example = new TestResourcePoolExample();
|
TestResourcePoolExample example = new TestResourcePoolExample();
|
||||||
example.createCriteria().andIdEqualTo(configMap.get(poolType).toString()).andAllOrgEqualTo(true);
|
example.createCriteria().andIdEqualTo(configMap.get(poolType).toString()).andAllOrgEqualTo(true);
|
||||||
if (testResourcePoolMapper.countByExample(example) > 0) {
|
if (testResourcePoolMapper.countByExample(example) > 0) {
|
||||||
count = extProjectMapper.resourcePoolIsExist(configMap.get(poolType).toString(), projectId, moduleType);
|
count = extProjectMapper.resourcePoolIsExist(configMap.get(poolType).toString(), projectId);
|
||||||
} else {
|
} else {
|
||||||
//指定组织 则需要关联组织-资源池的关系表 看看是否再全部存在
|
//指定组织 则需要关联组织-资源池的关系表 看看是否再全部存在
|
||||||
count = extProjectMapper.resourcePoolIsExistByOrg(configMap.get(poolType).toString(), projectId, moduleType);
|
count = extProjectMapper.resourcePoolIsExistByOrg(configMap.get(poolType).toString(), projectId);
|
||||||
}
|
}
|
||||||
if (count == 0) {
|
if (count == 0) {
|
||||||
configMap.remove(poolType);
|
configMap.remove(poolType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!configMap.containsKey(poolType)) {
|
if (!configMap.containsKey(poolType)) {
|
||||||
List<ProjectTestResourcePool> projectTestResourcePools = extProjectMapper.getResourcePool(projectId, moduleType);
|
List<ProjectTestResourcePool> projectTestResourcePools = extProjectMapper.getResourcePool(projectId);
|
||||||
if (CollectionUtils.isNotEmpty(projectTestResourcePools)) {
|
if (CollectionUtils.isNotEmpty(projectTestResourcePools)) {
|
||||||
projectTestResourcePools.sort(Comparator.comparing(ProjectTestResourcePool::getTestResourcePoolId));
|
projectTestResourcePools.sort(Comparator.comparing(ProjectTestResourcePool::getTestResourcePoolId));
|
||||||
configMap.put(poolType, projectTestResourcePools.getFirst().getTestResourcePoolId());
|
configMap.put(poolType, projectTestResourcePools.getFirst().getTestResourcePoolId());
|
||||||
|
|
|
@ -171,7 +171,7 @@ public class ProjectService {
|
||||||
return projectPools.stream().map(ProjectTestResourcePool::getTestResourcePoolId).toList();
|
return projectPools.stream().map(ProjectTestResourcePool::getTestResourcePoolId).toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<OptionDTO> getPoolOptions(String projectId, String type) {
|
public List<OptionDTO> getPoolOptions(String projectId) {
|
||||||
checkProjectNotExist(projectId);
|
checkProjectNotExist(projectId);
|
||||||
List<String> poolIds = getPoolIds(projectId);
|
List<String> poolIds = getPoolIds(projectId);
|
||||||
if (CollectionUtils.isEmpty(poolIds)) {
|
if (CollectionUtils.isEmpty(poolIds)) {
|
||||||
|
@ -180,14 +180,7 @@ public class ProjectService {
|
||||||
TestResourcePoolExample example = new TestResourcePoolExample();
|
TestResourcePoolExample example = new TestResourcePoolExample();
|
||||||
TestResourcePoolExample.Criteria criteria = example.createCriteria();
|
TestResourcePoolExample.Criteria criteria = example.createCriteria();
|
||||||
criteria.andIdIn(poolIds).andEnableEqualTo(true).andDeletedEqualTo(false);
|
criteria.andIdIn(poolIds).andEnableEqualTo(true).andDeletedEqualTo(false);
|
||||||
List<TestResourcePool> testResourcePools = new ArrayList<>();
|
List<TestResourcePool> testResourcePools = testResourcePoolMapper.selectByExample(example);
|
||||||
testResourcePools = switch (type) {
|
|
||||||
case ApplicationScope.API_TEST -> {
|
|
||||||
criteria.andApiTestEqualTo(true);
|
|
||||||
yield testResourcePoolMapper.selectByExample(example);
|
|
||||||
}
|
|
||||||
default -> new ArrayList<>();
|
|
||||||
};
|
|
||||||
return testResourcePools.stream().map(testResourcePool ->
|
return testResourcePools.stream().map(testResourcePool ->
|
||||||
new OptionDTO(testResourcePool.getId(), testResourcePool.getName())
|
new OptionDTO(testResourcePool.getId(), testResourcePool.getName())
|
||||||
).toList();
|
).toList();
|
||||||
|
|
|
@ -117,131 +117,6 @@ public class ProjectApplicationControllerTests extends BaseTest {
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ==========UI测试 start==========
|
|
||||||
*/
|
|
||||||
public static final String UI_UPDATE_URL = "/project/application/update/ui";
|
|
||||||
public static final String GET_UI_URL = "/project/application/ui";
|
|
||||||
public static final String GET_UI_RESOURCE_POOL_URL = "/project/application/ui/resource/pool";
|
|
||||||
|
|
||||||
//UI测试 - 清理报告配置
|
|
||||||
@Test
|
|
||||||
@Order(4)
|
|
||||||
public void testUiClean() throws Exception {
|
|
||||||
//新增
|
|
||||||
ProjectApplication request = creatRequest(ProjectApplicationType.UI.UI_CLEAN_REPORT.name(), TIME_TYPE_VALUE);
|
|
||||||
this.requestPost(UI_UPDATE_URL, request);
|
|
||||||
// @@异常参数校验
|
|
||||||
updatedGroupParamValidateTest(ProjectApplicationDefinition.class, UI_UPDATE_URL);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
//UI测试 - 分享报告配置
|
|
||||||
@Test
|
|
||||||
@Order(5)
|
|
||||||
public void testUiShare() throws Exception {
|
|
||||||
//新增
|
|
||||||
ProjectApplication request = creatRequest(ProjectApplicationType.UI.UI_SHARE_REPORT.name(), TIME_TYPE_VALUE);
|
|
||||||
this.requestPost(UI_UPDATE_URL, request);
|
|
||||||
//更新
|
|
||||||
request.setTypeValue("5M");
|
|
||||||
this.requestPost(UI_UPDATE_URL, request);
|
|
||||||
}
|
|
||||||
|
|
||||||
//UI测试 - 执行资源池
|
|
||||||
@Test
|
|
||||||
@Order(5)
|
|
||||||
public void testUiResourcePool() throws Exception {
|
|
||||||
ProjectApplication request = creatRequest(ProjectApplicationType.UI.UI_RESOURCE_POOL_ID.name(), "local");
|
|
||||||
this.requestPost(UI_UPDATE_URL, request);
|
|
||||||
}
|
|
||||||
|
|
||||||
//UI测试 - 获取配置
|
|
||||||
@Test
|
|
||||||
@Order(6)
|
|
||||||
public void testGetUi() throws Exception {
|
|
||||||
//清理报告 + 分享报告
|
|
||||||
ProjectApplicationRequest request = this.getRequest("UI");
|
|
||||||
this.requestPostWithOkAndReturn(GET_UI_URL, request);
|
|
||||||
// @@异常参数校验
|
|
||||||
updatedGroupParamValidateTest(ProjectApplicationRequestDefinition.class, GET_UI_URL);
|
|
||||||
}
|
|
||||||
|
|
||||||
//UI测试 - 获取资源池
|
|
||||||
@Test
|
|
||||||
@Order(6)
|
|
||||||
public void testGetUiResourcePool() throws Exception {
|
|
||||||
this.requestGetWithOkAndReturn(GET_UI_RESOURCE_POOL_URL + "/" + DEFAULT_PROJECT_ID);
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* ==========UI测试 end==========
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ==========性能测试 start==========
|
|
||||||
*/
|
|
||||||
public static final String PERFORMANCE_UPDATE_URL = "/project/application/update/performance-test";
|
|
||||||
public static final String GET_PERFORMANCE_URL = "/project/application/performance-test";
|
|
||||||
public static final String GET_USER_URL = "/project/application/performance-test/user";
|
|
||||||
|
|
||||||
//性能测试 - 清理报告配置
|
|
||||||
@Test
|
|
||||||
@Order(7)
|
|
||||||
public void testPerformanceClean() throws Exception {
|
|
||||||
//新增
|
|
||||||
ProjectApplication request = creatRequest(ProjectApplicationType.LOAD_TEST.LOAD_TEST_CLEAN_REPORT.name(), TIME_TYPE_VALUE);
|
|
||||||
this.requestPost(PERFORMANCE_UPDATE_URL, request);
|
|
||||||
//更新
|
|
||||||
request.setTypeValue("4M");
|
|
||||||
this.requestPost(PERFORMANCE_UPDATE_URL, request);
|
|
||||||
// @@异常参数校验
|
|
||||||
updatedGroupParamValidateTest(ProjectApplicationDefinition.class, PERFORMANCE_UPDATE_URL);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
//性能测试 - 分享报告配置
|
|
||||||
@Test
|
|
||||||
@Order(8)
|
|
||||||
public void testPerformanceShare() throws Exception {
|
|
||||||
//新增
|
|
||||||
ProjectApplication request = creatRequest(ProjectApplicationType.LOAD_TEST.LOAD_TEST_SHARE_REPORT.name(), TIME_TYPE_VALUE);
|
|
||||||
this.requestPost(PERFORMANCE_UPDATE_URL, request);
|
|
||||||
//更新
|
|
||||||
request.setTypeValue("5M");
|
|
||||||
this.requestPost(PERFORMANCE_UPDATE_URL, request);
|
|
||||||
}
|
|
||||||
|
|
||||||
//性能测试 - 脚本审核
|
|
||||||
@Test
|
|
||||||
@Order(9)
|
|
||||||
public void testPerformanceReviewer() throws Exception {
|
|
||||||
//新增
|
|
||||||
ProjectApplication request = creatRequest(ProjectApplicationType.LOAD_TEST.LOAD_TEST_SCRIPT_REVIEWER_ENABLE.name(), "admin");
|
|
||||||
this.requestPost(PERFORMANCE_UPDATE_URL, request);
|
|
||||||
}
|
|
||||||
|
|
||||||
//性能测试 - 获取配置
|
|
||||||
@Test
|
|
||||||
@Order(10)
|
|
||||||
public void testGetPerformance() throws Exception {
|
|
||||||
//清理报告 + 分享报告
|
|
||||||
ProjectApplicationRequest request = this.getRequest("PERFORMANCE_TEST");
|
|
||||||
this.requestPostWithOkAndReturn(GET_PERFORMANCE_URL, request);
|
|
||||||
// @@异常参数校验
|
|
||||||
updatedGroupParamValidateTest(ProjectApplicationRequestDefinition.class, GET_PERFORMANCE_URL);
|
|
||||||
}
|
|
||||||
|
|
||||||
//性能测试 - 获取项目成员
|
|
||||||
@Test
|
|
||||||
@Order(11)
|
|
||||||
public void testGetUser() throws Exception {
|
|
||||||
this.requestGetWithOkAndReturn(GET_USER_URL + "/default-project-2");
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* ==========性能测试 end==========
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ==========接口测试 start==========
|
* ==========接口测试 start==========
|
||||||
|
@ -401,31 +276,6 @@ public class ProjectApplicationControllerTests extends BaseTest {
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ==========工作台 start==========
|
|
||||||
*/
|
|
||||||
public static final String WORKSTATION_UPDATE_URL = "/project/application/update/workstation";
|
|
||||||
public static final String GET_WORKSTATION_URL = "/project/application/workstation";
|
|
||||||
|
|
||||||
//工作台
|
|
||||||
@Test
|
|
||||||
@Order(27)
|
|
||||||
public void testWorkstation() throws Exception {
|
|
||||||
ProjectApplication request = creatRequest(ProjectApplicationType.WORKSTATION.WORKSTATION_SYNC_RULE.name(), "true");
|
|
||||||
this.requestPost(WORKSTATION_UPDATE_URL, request);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
@Order(28)
|
|
||||||
public void testGetWorkstation() throws Exception {
|
|
||||||
ProjectApplicationRequest request = this.getRequest("WORKSTATION");
|
|
||||||
this.requestPostWithOkAndReturn(GET_WORKSTATION_URL, request);
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* ==========工作台 end==========
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ==========缺陷管理 start==========
|
* ==========缺陷管理 start==========
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -62,7 +62,7 @@ jmeter.home=/opt/jmeter
|
||||||
spring.servlet.multipart.max-file-size=500MB
|
spring.servlet.multipart.max-file-size=500MB
|
||||||
spring.servlet.multipart.max-request-size=500MB
|
spring.servlet.multipart.max-request-size=500MB
|
||||||
# i18n
|
# i18n
|
||||||
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/load,i18n/plan,i18n/project,i18n/system,i18n/ui,i18n/workstation
|
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/plan,i18n/project,i18n/system
|
||||||
# actuator
|
# actuator
|
||||||
management.endpoints.web.exposure.include=*
|
management.endpoints.web.exposure.include=*
|
||||||
management.endpoints.enabled-by-default=false
|
management.endpoints.enabled-by-default=false
|
||||||
|
|
|
@ -27,14 +27,12 @@ replace INTO user_role_permission(id, role_id, permission_id) VALUES ('user_role
|
||||||
#插入测试数据 环境
|
#插入测试数据 环境
|
||||||
replace INTO environment (id, name, project_id, create_user, update_user, create_time, update_time) VALUES ('environmentId1', '环境1', 'projectId1', 'admin', 'admin', unix_timestamp() * 1000, unix_timestamp() * 1000);
|
replace INTO environment (id, name, project_id, create_user, update_user, create_time, update_time) VALUES ('environmentId1', '环境1', 'projectId1', 'admin', 'admin', unix_timestamp() * 1000, unix_timestamp() * 1000);
|
||||||
|
|
||||||
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, api_test,
|
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, server_url, all_org, deleted)
|
||||||
load_test, ui_test, server_url, all_org, deleted)
|
|
||||||
values ('resourcePoolId', 'resourcePoolName', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
values ('resourcePoolId', 'resourcePoolName', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
||||||
unix_timestamp() * 1000, 'admin', 1, 1, 1, 'http://localhost:8080', 1, 0);
|
unix_timestamp() * 1000, 'admin', 'http://localhost:8080', 1, 0);
|
||||||
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, api_test,
|
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, server_url, all_org, deleted)
|
||||||
load_test, ui_test, server_url, all_org, deleted)
|
|
||||||
values ('resourcePoolId1', 'resourcePoolName1', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
values ('resourcePoolId1', 'resourcePoolName1', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
||||||
unix_timestamp() * 1000, 'admin', 1, 1, 1, 'http://localhost:8080', 1, 0);
|
unix_timestamp() * 1000, 'admin', 'http://localhost:8080', 1, 0);
|
||||||
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId');
|
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId');
|
||||||
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId1');
|
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId1');
|
||||||
replace into test_resource_pool_organization(id , test_resource_pool_id, org_id) value (UUID_SHORT(),'resourcePoolId', '100001');
|
replace into test_resource_pool_organization(id , test_resource_pool_id, org_id) value (UUID_SHORT(),'resourcePoolId', '100001');
|
|
@ -24,12 +24,6 @@ public class TestResourceNodeDTO {
|
||||||
@Schema(description = "接口测试性能测试 node节点端口")
|
@Schema(description = "接口测试性能测试 node节点端口")
|
||||||
private String port;
|
private String port;
|
||||||
|
|
||||||
/**
|
|
||||||
* 性能测试 node节点监控器
|
|
||||||
*/
|
|
||||||
@Schema(description = "性能测试 node节点监控器")
|
|
||||||
private String monitor;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 接口测试 性能测试 最大并发数
|
* 接口测试 性能测试 最大并发数
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -62,26 +62,6 @@ public class CleanUpReportJob {
|
||||||
map.put(ProjectApplicationType.TEST_PLAN.TEST_PLAN_CLEAN_REPORT.name(), "3M");
|
map.put(ProjectApplicationType.TEST_PLAN.TEST_PLAN_CLEAN_REPORT.name(), "3M");
|
||||||
}
|
}
|
||||||
|
|
||||||
//ui
|
|
||||||
applicationExample.clear();
|
|
||||||
applicationExample.createCriteria().andProjectIdEqualTo(project.getId()).andTypeEqualTo(ProjectApplicationType.UI.UI_CLEAN_REPORT.name());
|
|
||||||
List<ProjectApplication> ui = projectApplicationMapper.selectByExample(applicationExample);
|
|
||||||
if (CollectionUtils.isNotEmpty(ui)) {
|
|
||||||
map.put(ProjectApplicationType.UI.UI_CLEAN_REPORT.name(), ui.get(0).getTypeValue());
|
|
||||||
} else {
|
|
||||||
map.put(ProjectApplicationType.UI.UI_CLEAN_REPORT.name(), "3M");
|
|
||||||
}
|
|
||||||
|
|
||||||
//load_test
|
|
||||||
applicationExample.clear();
|
|
||||||
applicationExample.createCriteria().andProjectIdEqualTo(project.getId()).andTypeEqualTo(ProjectApplicationType.LOAD_TEST.LOAD_TEST_CLEAN_REPORT.name());
|
|
||||||
List<ProjectApplication> loadTest = projectApplicationMapper.selectByExample(applicationExample);
|
|
||||||
if (CollectionUtils.isNotEmpty(loadTest)) {
|
|
||||||
map.put(ProjectApplicationType.LOAD_TEST.LOAD_TEST_CLEAN_REPORT.name(), loadTest.get(0).getTypeValue());
|
|
||||||
} else {
|
|
||||||
map.put(ProjectApplicationType.LOAD_TEST.LOAD_TEST_CLEAN_REPORT.name(), "3M");
|
|
||||||
}
|
|
||||||
|
|
||||||
//api
|
//api
|
||||||
applicationExample.clear();
|
applicationExample.clear();
|
||||||
applicationExample.createCriteria().andProjectIdEqualTo(project.getId()).andTypeEqualTo(ProjectApplicationType.API.API_CLEAN_REPORT.name());
|
applicationExample.createCriteria().andProjectIdEqualTo(project.getId()).andTypeEqualTo(ProjectApplicationType.API.API_CLEAN_REPORT.name());
|
||||||
|
|
|
@ -20,15 +20,6 @@
|
||||||
<if test="request.deleted != null">
|
<if test="request.deleted != null">
|
||||||
and t.deleted = #{request.deleted}
|
and t.deleted = #{request.deleted}
|
||||||
</if>
|
</if>
|
||||||
<if test="request.apiTest != null and request.apiTest == true">
|
|
||||||
and t.api_test = true
|
|
||||||
</if>
|
|
||||||
<if test="request.loadTest != null and request.loadTest == true">
|
|
||||||
and t.load_test = true
|
|
||||||
</if>
|
|
||||||
<if test="request.uiTest != null and request.uiTest == true">
|
|
||||||
and t.ui_test = true
|
|
||||||
</if>
|
|
||||||
<include refid="filter"/>
|
<include refid="filter"/>
|
||||||
<include refid="combine">
|
<include refid="combine">
|
||||||
<property name="condition" value="request.combine"/>
|
<property name="condition" value="request.combine"/>
|
||||||
|
|
|
@ -78,12 +78,6 @@ public interface NoticeConstants {
|
||||||
@Schema(description = "message.api_test_management")
|
@Schema(description = "message.api_test_management")
|
||||||
String API_TEST_MANAGEMENT = "API_TEST_MANAGEMENT";
|
String API_TEST_MANAGEMENT = "API_TEST_MANAGEMENT";
|
||||||
|
|
||||||
@Schema(description = "message.ui_test_management")
|
|
||||||
String UI_TEST_MANAGEMENT = "UI_TEST_MANAGEMENT";
|
|
||||||
|
|
||||||
@Schema(description = "message.load_test_management")
|
|
||||||
String LOAD_TEST_MANAGEMENT = "LOAD_TEST_MANAGEMENT";
|
|
||||||
|
|
||||||
@Schema(description = "message.jenkins_task_management")
|
@Schema(description = "message.jenkins_task_management")
|
||||||
String JENKINS_TASK_MANAGEMENT = "JENKINS_TASK_MANAGEMENT";
|
String JENKINS_TASK_MANAGEMENT = "JENKINS_TASK_MANAGEMENT";
|
||||||
|
|
||||||
|
@ -323,30 +317,6 @@ public interface NoticeConstants {
|
||||||
@Schema(description = "message.api_report_task_delete")
|
@Schema(description = "message.api_report_task_delete")
|
||||||
String API_REPORT_TASK_DELETE = "API_REPORT_TASK_DELETE";//${OPERATOR}删除了接口报告:${name}
|
String API_REPORT_TASK_DELETE = "API_REPORT_TASK_DELETE";//${OPERATOR}删除了接口报告:${name}
|
||||||
|
|
||||||
@Schema(description = "message.ui_scenario_task_create")
|
|
||||||
String UI_SCENARIO_TASK_CREATE = "UI_SCENARIO_TASK_CREATE";//${OPERATOR}创建了UI用例:${name}
|
|
||||||
@Schema(description = "message.ui_scenario_task_update")
|
|
||||||
String UI_SCENARIO_TASK_UPDATE = "UI_SCENARIO_TASK_UPDATE";//${OPERATOR}更新了UI用例:${name}
|
|
||||||
@Schema(description = "message.ui_scenario_task_delete")
|
|
||||||
String UI_SCENARIO_TASK_DELETE = "UI_SCENARIO_TASK_DELETE";//${OPERATOR}删除了UI用例:${name}
|
|
||||||
@Schema(description = "message.ui_scenario_task_execute")
|
|
||||||
String UI_SCENARIO_TASK_EXECUTE_SUCCESSFUL = "UI_SCENARIO_TASK_EXECUTE_SUCCESSFUL";//${OPERATOR}执行了UI用例:${name}
|
|
||||||
@Schema(description = "message.ui_scenario_task_execute")
|
|
||||||
String UI_SCENARIO_TASK_EXECUTE_FAILED = "UI_SCENARIO_TASK_EXECUTE_FAILED";//${OPERATOR}执行了UI用例:${name}
|
|
||||||
@Schema(description = "message.ui_report_task_delete")
|
|
||||||
String UI_REPORT_TASK_DELETE = "UI_REPORT_TASK_DELETE";//${OPERATOR}删除了UI报告:${name}
|
|
||||||
|
|
||||||
@Schema(description = "message.load_test_task_create")
|
|
||||||
String LOAD_TEST_TASK_CREATE = "LOAD_TEST_TASK_CREATE";//${OPERATOR}创建了性能用例:${name}
|
|
||||||
@Schema(description = "message.load_test_task_update")
|
|
||||||
String LOAD_TEST_TASK_UPDATE = "LOAD_TEST_TASK_UPDATE";//${OPERATOR}更新了性能用例:${name}
|
|
||||||
@Schema(description = "message.load_test_task_delete")
|
|
||||||
String LOAD_TEST_TASK_DELETE = "LOAD_TEST_TASK_DELETE";//${OPERATOR}删除了性能用例:${name}
|
|
||||||
@Schema(description = "message.load_test_task_execute_completed")
|
|
||||||
String LOAD_TEST_TASK_EXECUTE_COMPLETED = "LOAD_TEST_TASK_EXECUTE_COMPLETED";//${OPERATOR}执行了性能用例:${name}
|
|
||||||
@Schema(description = "message.load_report_task_delete")
|
|
||||||
String LOAD_REPORT_TASK_DELETE = "LOAD_REPORT_TASK_DELETE";//${OPERATOR}删除了性能报告:${name}
|
|
||||||
|
|
||||||
@Schema(description = "message.jenkins_task_execute")
|
@Schema(description = "message.jenkins_task_execute")
|
||||||
String JENKINS_TASK_EXECUTE_SUCCESSFUL = "JENKINS_TASK_EXECUTE_SUCCESSFUL";//Jenkins执行了接口场景:${name}
|
String JENKINS_TASK_EXECUTE_SUCCESSFUL = "JENKINS_TASK_EXECUTE_SUCCESSFUL";//Jenkins执行了接口场景:${name}
|
||||||
@Schema(description = "message.jenkins_task_execute")
|
@Schema(description = "message.jenkins_task_execute")
|
||||||
|
@ -465,30 +435,6 @@ public interface NoticeConstants {
|
||||||
@Schema(description = "message.title.api_report_task_delete")//接口报告删除通知
|
@Schema(description = "message.title.api_report_task_delete")//接口报告删除通知
|
||||||
String API_REPORT_TASK_DELETE = "API_REPORT_TASK_DELETE";
|
String API_REPORT_TASK_DELETE = "API_REPORT_TASK_DELETE";
|
||||||
|
|
||||||
@Schema(description = "message.title.ui_scenario_task_create")//UI用例创建通知
|
|
||||||
String UI_SCENARIO_TASK_CREATE = "UI_SCENARIO_TASK_CREATE";
|
|
||||||
@Schema(description = "message.title.ui_scenario_task_update")//UI用例更新通知
|
|
||||||
String UI_SCENARIO_TASK_UPDATE = "UI_SCENARIO_TASK_UPDATE";
|
|
||||||
@Schema(description = "message.title.ui_scenario_task_delete")//UI用例删除通知
|
|
||||||
String UI_SCENARIO_TASK_DELETE = "UI_SCENARIO_TASK_DELETE";
|
|
||||||
@Schema(description = "message.title.ui_scenario_task_execute_successful")//UI用例执行成功通知
|
|
||||||
String UI_SCENARIO_TASK_EXECUTE_SUCCESSFUL = "UI_SCENARIO_TASK_EXECUTE_SUCCESSFUL";
|
|
||||||
@Schema(description = "message.title.ui_scenario_task_execute_failed")//UI用例执行失败通知
|
|
||||||
String UI_SCENARIO_TASK_EXECUTE_FAILED = "UI_SCENARIO_TASK_EXECUTE_FAILED";
|
|
||||||
@Schema(description = "message.title.ui_report_task_delete")//UI报告删除通知
|
|
||||||
String UI_REPORT_TASK_DELETE = "UI_REPORT_TASK_DELETE";
|
|
||||||
|
|
||||||
@Schema(description = "message.title.load_test_task_create")//性能用例创建通知
|
|
||||||
String LOAD_TEST_TASK_CREATE = "LOAD_TEST_TASK_CREATE";
|
|
||||||
@Schema(description = "message.title.load_test_task_update")//性能用例更新通知
|
|
||||||
String LOAD_TEST_TASK_UPDATE = "LOAD_TEST_TASK_UPDATE";
|
|
||||||
@Schema(description = "message.title.load_test_task_delete")//性能用例删除通知
|
|
||||||
String LOAD_TEST_TASK_DELETE = "LOAD_TEST_TASK_DELETE";
|
|
||||||
@Schema(description = "message.title.load_test_task_execute_completed")//性能用例执行完成通知
|
|
||||||
String LOAD_TEST_TASK_EXECUTE_COMPLETED = "LOAD_TEST_TASK_EXECUTE_COMPLETED";
|
|
||||||
@Schema(description = "message.title.load_report_task_delete")//性能报告删除通知
|
|
||||||
String LOAD_REPORT_TASK_DELETE = "LOAD_REPORT_TASK_DELETE";
|
|
||||||
|
|
||||||
@Schema(description = "message.title.jenkins_task_execute_successful")//Jenkins任务执行成功通知
|
@Schema(description = "message.title.jenkins_task_execute_successful")//Jenkins任务执行成功通知
|
||||||
String JENKINS_TASK_EXECUTE_SUCCESSFUL = "JENKINS_TASK_EXECUTE_SUCCESSFUL";
|
String JENKINS_TASK_EXECUTE_SUCCESSFUL = "JENKINS_TASK_EXECUTE_SUCCESSFUL";
|
||||||
@Schema(description = "message.title.jenkins_task_execute_failed")//Jenkins任务执行失败通知
|
@Schema(description = "message.title.jenkins_task_execute_failed")//Jenkins任务执行失败通知
|
||||||
|
|
|
@ -75,8 +75,6 @@ public class CommonProjectService {
|
||||||
private TestResourcePoolService testResourcePoolService;
|
private TestResourcePoolService testResourcePoolService;
|
||||||
public static final Integer DEFAULT_REMAIN_DAY_COUNT = 30;
|
public static final Integer DEFAULT_REMAIN_DAY_COUNT = 30;
|
||||||
public static final String API_TEST = "apiTest";
|
public static final String API_TEST = "apiTest";
|
||||||
public static final String UI_TEST = "uiTest";
|
|
||||||
public static final String LOAD_TEST = "loadTest";
|
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public CommonProjectService(ProjectServiceInvoker serviceInvoker) {
|
public CommonProjectService(ProjectServiceInvoker serviceInvoker) {
|
||||||
|
@ -647,9 +645,7 @@ public class CommonProjectService {
|
||||||
//这里需要获取项目开启的模块 判断资源池开启的使用范围的模块是否在项目开启的模块中
|
//这里需要获取项目开启的模块 判断资源池开启的使用范围的模块是否在项目开启的模块中
|
||||||
List<String> moduleIds = request.getModulesIds();
|
List<String> moduleIds = request.getModulesIds();
|
||||||
testResourcePools.forEach(pool -> {
|
testResourcePools.forEach(pool -> {
|
||||||
if ((moduleIds.contains(API_TEST) && pool.getApiTest()) ||
|
if (moduleIds.contains(API_TEST)) {
|
||||||
(moduleIds.contains(LOAD_TEST) && pool.getLoadTest()) ||
|
|
||||||
(moduleIds.contains(UI_TEST) && pool.getUiTest())) {
|
|
||||||
OptionDTO optionDTO = new OptionDTO();
|
OptionDTO optionDTO = new OptionDTO();
|
||||||
optionDTO.setId(pool.getId());
|
optionDTO.setId(pool.getId());
|
||||||
optionDTO.setName(pool.getName());
|
optionDTO.setName(pool.getName());
|
||||||
|
|
|
@ -5,5 +5,5 @@ import io.metersphere.system.dto.pool.TestResourceDTO;
|
||||||
|
|
||||||
public interface KubernetesResourcePoolService {
|
public interface KubernetesResourcePoolService {
|
||||||
|
|
||||||
boolean validate(TestResourceDTO testResourceDTO, Boolean usedApiType);
|
boolean validate(TestResourceDTO testResourceDTO);
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,7 @@ public class NodeResourcePoolService {
|
||||||
private final static String nodeControllerUrl = "http://%s:%s/status";
|
private final static String nodeControllerUrl = "http://%s:%s/status";
|
||||||
|
|
||||||
|
|
||||||
public boolean validate(TestResourceDTO testResourceDTO, Boolean usedApiType) {
|
public boolean validate(TestResourceDTO testResourceDTO) {
|
||||||
List<TestResourceNodeDTO> nodesList = testResourceDTO.getNodesList();
|
List<TestResourceNodeDTO> nodesList = testResourceDTO.getNodesList();
|
||||||
if (CollectionUtils.isEmpty(nodesList)) {
|
if (CollectionUtils.isEmpty(nodesList)) {
|
||||||
throw new MSException(Translator.get("no_nodes_message"));
|
throw new MSException(Translator.get("no_nodes_message"));
|
||||||
|
@ -46,11 +46,7 @@ public class NodeResourcePoolService {
|
||||||
testResourceNodeDTO.setConcurrentNumber(10);
|
testResourceNodeDTO.setConcurrentNumber(10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!usedApiType) {
|
|
||||||
if (StringUtils.isBlank(testResourceNodeDTO.getMonitor())) {
|
|
||||||
throw new MSException(Translator.get("monitor_is_null"));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
isValid = validateNode(testResourceNodeDTO);
|
isValid = validateNode(testResourceNodeDTO);
|
||||||
if (!isValid) {
|
if (!isValid) {
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -77,20 +77,11 @@ public class TestResourcePoolService {
|
||||||
SqlSessionUtils.closeSqlSession(sqlSession, sqlSessionFactory);
|
SqlSessionUtils.closeSqlSession(sqlSession, sqlSessionFactory);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean checkLoadConfig(TestResourceDTO testResourceDTO, TestResourcePool testResourcePool, String type) {
|
private static boolean checkNodeOrK8s(TestResourceDTO testResourceDTO, String type) {
|
||||||
if (testResourcePool.getLoadTest() == null || !testResourcePool.getLoadTest()) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
boolean validate = checkNodeOrK8s(testResourceDTO, type, false);
|
|
||||||
testResourcePool.setEnable(validate);
|
|
||||||
return validate;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static boolean checkNodeOrK8s(TestResourceDTO testResourceDTO, String type, Boolean usedApiType) {
|
|
||||||
if (StringUtils.equalsIgnoreCase(type, ResourcePoolTypeEnum.NODE.name())) {
|
if (StringUtils.equalsIgnoreCase(type, ResourcePoolTypeEnum.NODE.name())) {
|
||||||
NodeResourcePoolService resourcePoolService = CommonBeanFactory.getBean(NodeResourcePoolService.class);
|
NodeResourcePoolService resourcePoolService = CommonBeanFactory.getBean(NodeResourcePoolService.class);
|
||||||
if (resourcePoolService != null) {
|
if (resourcePoolService != null) {
|
||||||
return resourcePoolService.validate(testResourceDTO, usedApiType);
|
return resourcePoolService.validate(testResourceDTO);
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -99,26 +90,13 @@ public class TestResourcePoolService {
|
||||||
if (resourcePoolService == null) {
|
if (resourcePoolService == null) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return resourcePoolService.validate(testResourceDTO, usedApiType);
|
return resourcePoolService.validate(testResourceDTO);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void checkUiConfig(TestResourceDTO testResourceDTO, TestResourcePool testResourcePool) {
|
|
||||||
if (testResourcePool.getUiTest() == null || !testResourcePool.getUiTest()) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
UiResourceService resourcePoolService = CommonBeanFactory.getBean(UiResourceService.class);
|
|
||||||
if (resourcePoolService == null) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
resourcePoolService.validate(testResourceDTO);
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean checkApiConfig(TestResourceDTO testResourceDTO, TestResourcePool testResourcePool, String type) {
|
public boolean checkApiConfig(TestResourceDTO testResourceDTO, TestResourcePool testResourcePool, String type) {
|
||||||
if (testResourcePool.getApiTest() == null || !testResourcePool.getApiTest()) {
|
boolean validate = checkNodeOrK8s(testResourceDTO, type);
|
||||||
return true;
|
|
||||||
}
|
|
||||||
boolean validate = checkNodeOrK8s(testResourceDTO, type, true);
|
|
||||||
testResourcePool.setEnable(validate);
|
testResourcePool.setEnable(validate);
|
||||||
return validate;
|
return validate;
|
||||||
}
|
}
|
||||||
|
@ -129,8 +107,7 @@ public class TestResourcePoolService {
|
||||||
TestResourceDTO testResourceDTO = testResourcePool.getTestResourceDTO();
|
TestResourceDTO testResourceDTO = testResourcePool.getTestResourceDTO();
|
||||||
checkAndSaveOrgRelation(testResourcePool, testResourcePool.getId(), testResourceDTO);
|
checkAndSaveOrgRelation(testResourcePool, testResourcePool.getId(), testResourceDTO);
|
||||||
checkApiConfig(testResourceDTO, testResourcePool, testResourcePool.getType());
|
checkApiConfig(testResourceDTO, testResourcePool, testResourcePool.getType());
|
||||||
checkLoadConfig(testResourceDTO, testResourcePool, testResourcePool.getType());
|
|
||||||
checkUiConfig(testResourceDTO, testResourcePool);
|
|
||||||
if (CollectionUtils.isEmpty(testResourceDTO.getNodesList())) {
|
if (CollectionUtils.isEmpty(testResourceDTO.getNodesList())) {
|
||||||
testResourceDTO.setNodesList(new ArrayList<>());
|
testResourceDTO.setNodesList(new ArrayList<>());
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
package io.metersphere.system.service;
|
|
||||||
|
|
||||||
|
|
||||||
import io.metersphere.system.dto.pool.TestResourceDTO;
|
|
||||||
|
|
||||||
public interface UiResourceService {
|
|
||||||
|
|
||||||
boolean validate(TestResourceDTO testResourceDTO);
|
|
||||||
|
|
||||||
}
|
|
|
@ -85,7 +85,7 @@
|
||||||
<!-- <table tableName="service_integration"/>-->
|
<!-- <table tableName="service_integration"/>-->
|
||||||
<!-- <table tableName="system_parameter"/>-->
|
<!-- <table tableName="system_parameter"/>-->
|
||||||
<!-- <table tableName="test_resource"/>-->
|
<!-- <table tableName="test_resource"/>-->
|
||||||
<!-- <table tableName="test_resource_pool"/>-->
|
<table tableName="test_resource_pool"/>
|
||||||
<!-- <table tableName="user"/>-->
|
<!-- <table tableName="user"/>-->
|
||||||
<!-- <table tableName="user_extend"/>-->
|
<!-- <table tableName="user_extend"/>-->
|
||||||
<!-- <table tableName="user_key"/>-->
|
<!-- <table tableName="user_key"/>-->
|
||||||
|
@ -95,7 +95,7 @@
|
||||||
<!-- <table tableName="organization"/>-->
|
<!-- <table tableName="organization"/>-->
|
||||||
|
|
||||||
<!-- <table tableName="custom_field"/>-->
|
<!-- <table tableName="custom_field"/>-->
|
||||||
<table tableName="custom_field_option"/>
|
<!-- <table tableName="custom_field_option"/>-->
|
||||||
<!-- <table tableName="template"/>-->
|
<!-- <table tableName="template"/>-->
|
||||||
<!-- <table tableName="template_custom_field"/>-->
|
<!-- <table tableName="template_custom_field"/>-->
|
||||||
<!-- <table tableName="status_item"/>-->
|
<!-- <table tableName="status_item"/>-->
|
||||||
|
|
|
@ -218,7 +218,7 @@ class TestResourcePoolControllerTests extends BaseTest {
|
||||||
@Order(4)
|
@Order(4)
|
||||||
void addTestResourcePoolFour() throws Exception {
|
void addTestResourcePoolFour() throws Exception {
|
||||||
// 选全部资源池,部分没值 资源池节点为NODE use:
|
// 选全部资源池,部分没值 资源池节点为NODE use:
|
||||||
this.addTestResourcePoolSuccess("test_pool_4", true, false, false, false, false,false, ResourcePoolTypeEnum.NODE.name());
|
this.addTestResourcePoolSuccess("test_pool_4", true, false, false, false, false, false, ResourcePoolTypeEnum.NODE.name());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -309,28 +309,13 @@ class TestResourcePoolControllerTests extends BaseTest {
|
||||||
ResultHolder resultHolder = JSON.parseObject(contentAsString, ResultHolder.class);
|
ResultHolder resultHolder = JSON.parseObject(contentAsString, ResultHolder.class);
|
||||||
TestResourcePoolReturnDTO testResourcePoolReturnDTO = JSON.parseObject(JSON.toJSONString(resultHolder.getData()), TestResourcePoolReturnDTO.class);
|
TestResourcePoolReturnDTO testResourcePoolReturnDTO = JSON.parseObject(JSON.toJSONString(resultHolder.getData()), TestResourcePoolReturnDTO.class);
|
||||||
Assertions.assertTrue((CollectionUtils.isNotEmpty(testResourcePoolReturnDTO.getTestResourceReturnDTO().getOrgIdNameMap())));
|
Assertions.assertTrue((CollectionUtils.isNotEmpty(testResourcePoolReturnDTO.getTestResourceReturnDTO().getOrgIdNameMap())));
|
||||||
if (testResourcePoolRequest1.getUiTest()) {
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getUiGrid());
|
|
||||||
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getGirdConcurrentNumber() > 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (testResourcePoolRequest1.getApiTest()) {
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getIp());
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getToken());
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getNamespace());
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getDeployName());
|
|
||||||
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getConcurrentNumber() > 0);
|
|
||||||
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getPodThreads() > 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (testResourcePoolRequest1.getLoadTest()) {
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getIp());
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getToken());
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getNamespace());
|
|
||||||
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getConcurrentNumber() > 0);
|
|
||||||
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getPodThreads() > 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getIp());
|
||||||
|
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getToken());
|
||||||
|
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getNamespace());
|
||||||
|
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getDeployName());
|
||||||
|
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getConcurrentNumber() > 0);
|
||||||
|
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getPodThreads() > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -348,28 +333,13 @@ class TestResourcePoolControllerTests extends BaseTest {
|
||||||
ResultHolder resultHolder = JSON.parseObject(contentAsString, ResultHolder.class);
|
ResultHolder resultHolder = JSON.parseObject(contentAsString, ResultHolder.class);
|
||||||
TestResourcePoolReturnDTO testResourcePoolReturnDTO = JSON.parseObject(JSON.toJSONString(resultHolder.getData()), TestResourcePoolReturnDTO.class);
|
TestResourcePoolReturnDTO testResourcePoolReturnDTO = JSON.parseObject(JSON.toJSONString(resultHolder.getData()), TestResourcePoolReturnDTO.class);
|
||||||
Assertions.assertTrue((CollectionUtils.isNotEmpty(testResourcePoolReturnDTO.getTestResourceReturnDTO().getOrgIdNameMap())));
|
Assertions.assertTrue((CollectionUtils.isNotEmpty(testResourcePoolReturnDTO.getTestResourceReturnDTO().getOrgIdNameMap())));
|
||||||
if (testResourcePoolRequest1.getUiTest()) {
|
|
||||||
Assertions.assertNotNull(testResourcePoolReturnDTO.getTestResourceReturnDTO().getUiGrid());
|
|
||||||
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getGirdConcurrentNumber() > 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (testResourcePoolRequest1.getApiTest()) {
|
|
||||||
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getNodesList().size() > 0);
|
|
||||||
for (TestResourceNodeDTO testResourceNodeDTO : testResourcePoolReturnDTO.getTestResourceReturnDTO().getNodesList()) {
|
|
||||||
Assertions.assertNotNull(testResourceNodeDTO.getIp());
|
|
||||||
Assertions.assertNotNull(testResourceNodeDTO.getPort());
|
|
||||||
Assertions.assertNotNull(testResourceNodeDTO.getConcurrentNumber());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (testResourcePoolRequest1.getLoadTest()) {
|
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getNodesList().size() > 0);
|
||||||
Assertions.assertTrue(testResourcePoolReturnDTO.getTestResourceReturnDTO().getNodesList().size() > 0);
|
for (TestResourceNodeDTO testResourceNodeDTO : testResourcePoolReturnDTO.getTestResourceReturnDTO().getNodesList()) {
|
||||||
for (TestResourceNodeDTO testResourceNodeDTO : testResourcePoolReturnDTO.getTestResourceReturnDTO().getNodesList()) {
|
Assertions.assertNotNull(testResourceNodeDTO.getIp());
|
||||||
Assertions.assertNotNull(testResourceNodeDTO.getIp());
|
Assertions.assertNotNull(testResourceNodeDTO.getPort());
|
||||||
Assertions.assertNotNull(testResourceNodeDTO.getPort());
|
Assertions.assertNotNull(testResourceNodeDTO.getConcurrentNumber());
|
||||||
Assertions.assertNotNull(testResourceNodeDTO.getConcurrentNumber());
|
|
||||||
Assertions.assertNotNull(testResourceNodeDTO.getMonitor());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -403,7 +373,7 @@ class TestResourcePoolControllerTests extends BaseTest {
|
||||||
String id = "1034";
|
String id = "1034";
|
||||||
getDetail("/test/resource/pool/detail/" + id, ERROR_REQUEST_MATCHER);
|
getDetail("/test/resource/pool/detail/" + id, ERROR_REQUEST_MATCHER);
|
||||||
|
|
||||||
TestResourcePool testResourcePoolRequest1 = this.addTestResourcePoolSuccess("test_pool_blob_no_node", true, false, true, false, false, true,ResourcePoolTypeEnum.K8S.name());
|
TestResourcePool testResourcePoolRequest1 = this.addTestResourcePoolSuccess("test_pool_blob_no_node", true, false, true, false, false, true, ResourcePoolTypeEnum.K8S.name());
|
||||||
getDetail("/test/resource/pool/detail/" + testResourcePoolRequest1.getId(), status().isOk());
|
getDetail("/test/resource/pool/detail/" + testResourcePoolRequest1.getId(), status().isOk());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -518,7 +488,7 @@ class TestResourcePoolControllerTests extends BaseTest {
|
||||||
} else {
|
} else {
|
||||||
//更新 ID 为空
|
//更新 ID 为空
|
||||||
url = TEST_RESOURCE_POOL_UPDATE;
|
url = TEST_RESOURCE_POOL_UPDATE;
|
||||||
TestResourcePoolRequest testResourcePoolRequest = generatorDto(true, false, false, false, false, false, false, false, false);
|
TestResourcePoolRequest testResourcePoolRequest = generatorDto(true, false, false, false, false, false, false, false);
|
||||||
testResourcePoolRequest.setId("");
|
testResourcePoolRequest.setId("");
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, status().isBadRequest());
|
this.requestPost(urlType, url, id, testResourcePoolRequest, status().isBadRequest());
|
||||||
|
|
||||||
|
@ -528,44 +498,44 @@ class TestResourcePoolControllerTests extends BaseTest {
|
||||||
|
|
||||||
//资源池名称重复
|
//资源池名称重复
|
||||||
TestResourcePoolDTO testPool4 = listByKeyWord("test_pool_4");
|
TestResourcePoolDTO testPool4 = listByKeyWord("test_pool_4");
|
||||||
TestResourcePoolRequest testResourcePoolRequest = generatorDto(true, false, false, false, false, false, false, false, false);
|
TestResourcePoolRequest testResourcePoolRequest = generatorDto(true, false, false, false, false, false, false, false);
|
||||||
testResourcePoolRequest.setName("test_pool_blob2");
|
testResourcePoolRequest.setName("test_pool_blob2");
|
||||||
this.requestPost(urlType, url, testPool4.getId(), testResourcePoolRequest, status().is5xxServerError());
|
this.requestPost(urlType, url, testPool4.getId(), testResourcePoolRequest, status().is5xxServerError());
|
||||||
//资源池类型为空
|
//资源池类型为空
|
||||||
testResourcePoolRequest = generatorDto(true, false, true, false, false, false, false, false, false);
|
testResourcePoolRequest = generatorDto(true, false, true, false, false, false, false, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, status().isBadRequest());
|
this.requestPost(urlType, url, id, testResourcePoolRequest, status().isBadRequest());
|
||||||
//api 类型 资源池节点集合为空
|
//api 类型 资源池节点集合为空
|
||||||
testResourcePoolRequest = generatorDto(true, false, false, true, false, false, false, false, false);
|
testResourcePoolRequest = generatorDto(true, false, false, true, false, false, false, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//资源池节点不为空,但是内容为空 ip 为空
|
//资源池节点不为空,但是内容为空 ip 为空
|
||||||
testResourcePoolRequest = generatorDto(true, false, false, true, false, true, false, false, false);
|
testResourcePoolRequest = generatorDto(true, false, false, true, false, true, false, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//资源池节点不为空,但是内容为空 port 为空
|
//资源池节点不为空,但是内容为空 port 为空
|
||||||
testResourcePoolRequest = generatorDto(true, false, false, true, false, false, true, false, false);
|
testResourcePoolRequest = generatorDto(true, false, false, true, false, false, true, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//资源池节点不为空,但是内容为空 最大线程数 为空
|
//资源池节点不为空,但是内容为空 最大线程数 为空
|
||||||
testResourcePoolRequest = generatorDto(true, false, false, true, false, false, false, false, true);
|
testResourcePoolRequest = generatorDto(true, false, false, true, false, false, false, true);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//性能测试类型 资源池节点集合为空
|
//性能测试类型 资源池节点集合为空
|
||||||
testResourcePoolRequest = generatorDto(false, false, false, true, false, false, false, false, false);
|
testResourcePoolRequest = generatorDto(false, false, false, true, false, false, false, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//资源池节点不为空,但是内容为空ip为空
|
//资源池节点不为空,但是内容为空ip为空
|
||||||
testResourcePoolRequest = generatorDto(false, false, false, true, false, true, false, false, false);
|
testResourcePoolRequest = generatorDto(false, false, false, true, false, true, false, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//资源池节点不为空,但是内容为空 port 为空
|
//资源池节点不为空,但是内容为空 port 为空
|
||||||
testResourcePoolRequest = generatorDto(false, false, false, true, false, false, true, false, false);
|
testResourcePoolRequest = generatorDto(false, false, false, true, false, false, true, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//资源池节点不为空,但是内容为空 port 为空
|
//资源池节点不为空,但是内容为空 port 为空
|
||||||
testResourcePoolRequest = generatorDto(false, false, false, true, false, false, false, true, false);
|
testResourcePoolRequest = generatorDto(false, false, false, true, false, false, false, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//资源池节点不为空,但是内容为空 最大线程数 为空
|
//资源池节点不为空,但是内容为空 最大线程数 为空
|
||||||
testResourcePoolRequest = generatorDto(false, false, false, true, false, false, false, false, true);
|
testResourcePoolRequest = generatorDto(false, false, false, true, false, false, false, true);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
//应用组织
|
//应用组织
|
||||||
testResourcePoolRequest = generatorDto(true, false, false, false, true, false, false, false, false);
|
testResourcePoolRequest = generatorDto(true, false, false, false, true, false, false, false);
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, status().isBadRequest());
|
this.requestPost(urlType, url, id, testResourcePoolRequest, status().isBadRequest());
|
||||||
//部分组织
|
//部分组织
|
||||||
testResourcePoolRequest = generatorDto(true, false, false, false, false, false, false, false, false);
|
testResourcePoolRequest = generatorDto(true, false, false, false, false, false, false, false);
|
||||||
testResourcePoolRequest.setAllOrg(false);
|
testResourcePoolRequest.setAllOrg(false);
|
||||||
testResourcePoolRequest.setTestResourceDTO(JSON.parseObject(configurationWidthOutOrgIds, TestResourceDTO.class));
|
testResourcePoolRequest.setTestResourceDTO(JSON.parseObject(configurationWidthOutOrgIds, TestResourceDTO.class));
|
||||||
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
this.requestPost(urlType, url, id, testResourcePoolRequest, ERROR_REQUEST_MATCHER);
|
||||||
|
@ -605,7 +575,7 @@ class TestResourcePoolControllerTests extends BaseTest {
|
||||||
.andExpect(content().contentType(MediaType.APPLICATION_JSON));
|
.andExpect(content().contentType(MediaType.APPLICATION_JSON));
|
||||||
}
|
}
|
||||||
|
|
||||||
private TestResourcePoolRequest generatorDto(boolean useApiType, boolean noName, boolean noType, boolean noResources, boolean noAllOrg, boolean noIp, boolean noPort, boolean noMonitor, boolean noConcurrentNumber) {
|
private TestResourcePoolRequest generatorDto(boolean useApiType, boolean noName, boolean noType, boolean noResources, boolean noAllOrg, boolean noIp, boolean noPort, boolean noConcurrentNumber) {
|
||||||
TestResourcePoolRequest testResourcePoolDTO = new TestResourcePoolRequest();
|
TestResourcePoolRequest testResourcePoolDTO = new TestResourcePoolRequest();
|
||||||
//没名字
|
//没名字
|
||||||
if (!noName) {
|
if (!noName) {
|
||||||
|
@ -635,17 +605,13 @@ class TestResourcePoolControllerTests extends BaseTest {
|
||||||
} else {
|
} else {
|
||||||
testResourceNodeDTO.setPort(port + "");
|
testResourceNodeDTO.setPort(port + "");
|
||||||
}
|
}
|
||||||
if (noMonitor) {
|
|
||||||
testResourceNodeDTO.setMonitor(" ");
|
|
||||||
} else {
|
|
||||||
testResourceNodeDTO.setMonitor("11");
|
|
||||||
}
|
|
||||||
if (noConcurrentNumber) {
|
if (noConcurrentNumber) {
|
||||||
testResourceNodeDTO.setConcurrentNumber(null);
|
testResourceNodeDTO.setConcurrentNumber(null);
|
||||||
} else {
|
} else {
|
||||||
testResourceNodeDTO.setConcurrentNumber(1);
|
testResourceNodeDTO.setConcurrentNumber(1);
|
||||||
}
|
}
|
||||||
if (!noIp && !noPort && !noMonitor && !noConcurrentNumber) {
|
if (!noIp && !noPort && !noConcurrentNumber) {
|
||||||
testResourceDTO.setNodesList(null);
|
testResourceDTO.setNodesList(null);
|
||||||
} else {
|
} else {
|
||||||
List<TestResourceNodeDTO> testResourceNodeDTOS = new ArrayList<>();
|
List<TestResourceNodeDTO> testResourceNodeDTOS = new ArrayList<>();
|
||||||
|
|
|
@ -63,7 +63,7 @@ jmeter.home=/opt/jmeter
|
||||||
spring.servlet.multipart.max-file-size=500MB
|
spring.servlet.multipart.max-file-size=500MB
|
||||||
spring.servlet.multipart.max-request-size=500MB
|
spring.servlet.multipart.max-request-size=500MB
|
||||||
# i18n
|
# i18n
|
||||||
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/load,i18n/plan,i18n/project,i18n/system,i18n/ui,i18n/workstation
|
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/plan,i18n/project,i18n/system
|
||||||
# actuator
|
# actuator
|
||||||
management.endpoints.web.exposure.include=*
|
management.endpoints.web.exposure.include=*
|
||||||
management.endpoints.enabled-by-default=false
|
management.endpoints.enabled-by-default=false
|
||||||
|
|
|
@ -26,14 +26,12 @@ replace INTO user_role_relation (id, user_id, role_id, source_id, organization_i
|
||||||
INSERT INTO organization(id,num, name, description, create_time, update_time, create_user, update_user, delete_user, delete_time) VALUE
|
INSERT INTO organization(id,num, name, description, create_time, update_time, create_user, update_user, delete_user, delete_time) VALUE
|
||||||
('default-organization-20',null, 'default-20', 'XXX-1', UNIX_TIMESTAMP() * 1000, UNIX_TIMESTAMP() * 1000, 'admin', 'admin', null, null);
|
('default-organization-20',null, 'default-20', 'XXX-1', UNIX_TIMESTAMP() * 1000, UNIX_TIMESTAMP() * 1000, 'admin', 'admin', null, null);
|
||||||
|
|
||||||
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, api_test,
|
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, server_url, all_org, deleted)
|
||||||
load_test, ui_test, server_url, all_org, deleted)
|
|
||||||
values ('resourcePoolId', 'resourcePoolName', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
values ('resourcePoolId', 'resourcePoolName', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
||||||
unix_timestamp() * 1000, 'admin', 1, 1, 1, 'http://localhost:8080', 1, 0);
|
unix_timestamp() * 1000, 'admin', 'http://localhost:8080', 1, 0);
|
||||||
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, api_test,
|
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, server_url, all_org, deleted)
|
||||||
load_test, ui_test, server_url, all_org, deleted)
|
|
||||||
values ('resourcePoolId1', 'resourcePoolName1', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
values ('resourcePoolId1', 'resourcePoolName1', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
||||||
unix_timestamp() * 1000, 'admin', 1, 1, 1, 'http://localhost:8080', 1, 0);
|
unix_timestamp() * 1000, 'admin', 'http://localhost:8080', 1, 0);
|
||||||
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId');
|
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId');
|
||||||
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId1');
|
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId1');
|
||||||
replace into test_resource_pool_organization(id , test_resource_pool_id, org_id) value (UUID_SHORT(),'resourcePoolId', '100001');
|
replace into test_resource_pool_organization(id , test_resource_pool_id, org_id) value (UUID_SHORT(),'resourcePoolId', '100001');
|
|
@ -32,14 +32,12 @@ replace
|
||||||
VALUES ('c3bb9b4f-46d8-4952-9681-8889974487q', 'admin2', 'project_admin', 'projectId1',
|
VALUES ('c3bb9b4f-46d8-4952-9681-8889974487q', 'admin2', 'project_admin', 'projectId1',
|
||||||
(SELECT id FROM organization WHERE name LIKE '默认组织'), '1684747668321', '1684747668336');
|
(SELECT id FROM organization WHERE name LIKE '默认组织'), '1684747668321', '1684747668336');
|
||||||
|
|
||||||
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, api_test,
|
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, server_url, all_org, deleted)
|
||||||
load_test, ui_test, server_url, all_org, deleted)
|
|
||||||
values ('resourcePoolId', 'resourcePoolName', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
values ('resourcePoolId', 'resourcePoolName', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
||||||
unix_timestamp() * 1000, 'admin', 1, 1, 1, 'http://localhost:8080', 1, 0);
|
unix_timestamp() * 1000, 'admin', 'http://localhost:8080', 1, 0);
|
||||||
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, api_test,
|
replace into test_resource_pool(id, name, type, description, enable, create_time, update_time, create_user, server_url, all_org, deleted)
|
||||||
load_test, ui_test, server_url, all_org, deleted)
|
|
||||||
values ('resourcePoolId1', 'resourcePoolName1', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
values ('resourcePoolId1', 'resourcePoolName1', 'node', 'resourcePoolDescription', 1, unix_timestamp() * 1000,
|
||||||
unix_timestamp() * 1000, 'admin', 1, 1, 1, 'http://localhost:8080', 1, 0);
|
unix_timestamp() * 1000, 'admin', 'http://localhost:8080', 1, 0);
|
||||||
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId');
|
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId');
|
||||||
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId1');
|
replace into project_test_resource_pool(project_id, test_resource_pool_id) value ('projectId', 'resourcePoolId1');
|
||||||
replace into test_resource_pool_organization(id , test_resource_pool_id, org_id) value (UUID_SHORT(),'resourcePoolId', '100001');
|
replace into test_resource_pool_organization(id , test_resource_pool_id, org_id) value (UUID_SHORT(),'resourcePoolId', '100001');
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# 插入测试数据
|
# 插入测试数据
|
||||||
INSERT INTO `test_resource_pool` VALUES ('102','test_pool_one', 'node', '1', 1, '1686634885000', '1686634885000', 'TCP', 0, 0, 0, NULL, 1,0);
|
INSERT INTO `test_resource_pool` VALUES ('102','test_pool_one', 'node', '1', 1, '1686634885000', '1686634885000', 'TCP', NULL, 1,0);
|
||||||
INSERT INTO `test_resource_pool` VALUES ('103','test_pool_two', 'node', '1', 1, '1686634885000', '1686634885000', 'TCP', 0, 0, 0, NULL, 1,0);
|
INSERT INTO `test_resource_pool` VALUES ('103','test_pool_two', 'node', '1', 1, '1686634885000', '1686634885000', 'TCP', NULL, 1,0);
|
||||||
INSERT INTO `test_resource_pool` VALUES ('104','test_pool_three', 'node', '1', 1, '1686634885000', '1686634885000', 'TCP', 0, 0, 0, NULL, 1,0);
|
INSERT INTO `test_resource_pool` VALUES ('104','test_pool_three', 'node', '1', 1, '1686634885000', '1686634885000', 'TCP', NULL, 1,0);
|
||||||
|
|
|
@ -60,7 +60,7 @@ jmeter.home=/opt/jmeter
|
||||||
spring.servlet.multipart.max-file-size=500MB
|
spring.servlet.multipart.max-file-size=500MB
|
||||||
spring.servlet.multipart.max-request-size=500MB
|
spring.servlet.multipart.max-request-size=500MB
|
||||||
# i18n
|
# i18n
|
||||||
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/load,i18n/plan,i18n/project,i18n/system,i18n/ui,i18n/workstation
|
spring.messages.basename=i18n/commons,i18n/api,i18n/bug,i18n/case,i18n/plan,i18n/project,i18n/system
|
||||||
# actuator
|
# actuator
|
||||||
management.endpoints.web.exposure.include=*
|
management.endpoints.web.exposure.include=*
|
||||||
management.endpoints.enabled-by-default=false
|
management.endpoints.enabled-by-default=false
|
||||||
|
|
Loading…
Reference in New Issue