fix(接口定义): 修复并行控制器多展示前后置操作的缺陷 (#17617)

--bug=1016058 --user=王孝刚 【接口测试】并行控制器,添加子步骤后,里面的断言规则会变多
https://www.tapd.cn/55049933/s/1236803

Co-authored-by: wxg0103 <727495428@qq.com>
This commit is contained in:
MeterSphere Bot 2022-09-01 14:00:57 +08:00 committed by GitHub
parent 9312246003
commit 122b966923
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 14 additions and 6 deletions

View File

@ -36,25 +36,28 @@
</el-tab-pane> </el-tab-pane>
<!-- 脚本步骤/断言步骤 --> <!-- 脚本步骤/断言步骤 -->
<el-tab-pane :label="$t('api_test.definition.request.pre_operation')" name="preOperate"> <el-tab-pane :label="$t('api_test.definition.request.pre_operation')" name="preOperate" v-if="showOther">
<span class="item-tabs" effect="dark" placement="top-start" slot="label"> <span class="item-tabs" effect="dark" placement="top-start" slot="label">
{{ $t('api_test.definition.request.pre_operation') }} {{ $t('api_test.definition.request.pre_operation') }}
<div class="el-step__icon is-text ms-api-col ms-header" v-if="request.preSize > 0"> <div class="el-step__icon is-text ms-api-col ms-header" v-if="request.preSize > 0">
<div class="el-step__icon-inner">{{ request.preSize }}</div> <div class="el-step__icon-inner">{{ request.preSize }}</div>
</div> </div>
</span> </span>
<ms-jmx-step :request="request" :apiId="request.id" :scenario-id="currentScenario.id" :response="response" :tab-type="'pre'" ref="preStep"/> <ms-jmx-step :request="request" :apiId="request.id" :scenario-id="currentScenario.id" :response="response"
:tab-type="'pre'" ref="preStep"/>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="$t('api_test.definition.request.post_operation')" name="postOperate"> <el-tab-pane :label="$t('api_test.definition.request.post_operation')" name="postOperate" v-if="showOther">
<span class="item-tabs" effect="dark" placement="top-start" slot="label"> <span class="item-tabs" effect="dark" placement="top-start" slot="label">
{{ $t('api_test.definition.request.post_operation') }} {{ $t('api_test.definition.request.post_operation') }}
<div class="el-step__icon is-text ms-api-col ms-header" v-if="request.postSize > 0"> <div class="el-step__icon is-text ms-api-col ms-header" v-if="request.postSize > 0">
<div class="el-step__icon-inner">{{ request.postSize }}</div> <div class="el-step__icon-inner">{{ request.postSize }}</div>
</div> </div>
</span> </span>
<ms-jmx-step :request="request" :apiId="request.id" :scenario-id="currentScenario.id" :response="response" :tab-type="'post'" ref="postStep"/> <ms-jmx-step :request="request" :apiId="request.id" :scenario-id="currentScenario.id" :response="response"
:tab-type="'post'" ref="postStep"/>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="$t('api_test.definition.request.assertions_rule')" name="assertionsRule"> <el-tab-pane :label="$t('api_test.definition.request.assertions_rule')" name="assertionsRule"
v-if="showOther">
<span class="item-tabs" effect="dark" placement="top-start" slot="label"> <span class="item-tabs" effect="dark" placement="top-start" slot="label">
{{ $t('api_test.definition.request.assertions_rule') }} {{ $t('api_test.definition.request.assertions_rule') }}
<div class="el-step__icon is-text ms-api-col ms-header" v-if="request.ruleSize > 0"> <div class="el-step__icon is-text ms-api-col ms-header" v-if="request.ruleSize > 0">
@ -62,7 +65,8 @@
</div> </div>
</span> </span>
<div style="margin-right: 20px"> <div style="margin-right: 20px">
<ms-jmx-step :request="request" :apiId="request.id" :scenario-id="currentScenario.id" :response="response" @reload="reload" :tab-type="'assertionsRule'" ref="assertionsRule"/> <ms-jmx-step :request="request" :apiId="request.id" :scenario-id="currentScenario.id"
:response="response" @reload="reload" :tab-type="'assertionsRule'" ref="assertionsRule"/>
</div> </div>
</el-tab-pane> </el-tab-pane>
@ -201,6 +205,7 @@ export default {
), ),
pluginName: "", pluginName: "",
response: {}, response: {},
showOther: true
} }
}, },
computed: { computed: {
@ -236,6 +241,9 @@ export default {
} }
this.data = this.request; this.data = this.request;
this.pluginName = this.request.stepName ? this.request.stepName : this.request.type; this.pluginName = this.request.stepName ? this.request.stepName : this.request.type;
if (this.request.type === 'GenericController') {
this.showOther = false;
}
if (this.request.hashTree) { if (this.request.hashTree) {
this.initStepSize(this.request.hashTree); this.initStepSize(this.request.hashTree);
this.historicalDataProcessing(this.request.hashTree); this.historicalDataProcessing(this.request.hashTree);