fix(接口测试) 修复用例headers内容不显示问题

This commit is contained in:
fit2-zhao 2022-01-22 14:48:12 +08:00 committed by fit2-zhao
parent d9439c8d59
commit 17351ef821
2 changed files with 266 additions and 258 deletions

View File

@ -28,7 +28,8 @@
</el-col> </el-col>
<el-col class="item" v-if="unShowSelect===true"> <el-col class="item" v-if="unShowSelect===true">
<el-input v-if="suggestions" :disabled="isReadOnly" v-model="item.name" size="small" maxlength="200" :placeholder="keyText" show-word-limit/> <el-input v-if="suggestions" :disabled="isReadOnly" v-model="item.name" size="small" maxlength="200"
:placeholder="keyText" show-word-limit/>
</el-col> </el-col>
<el-col class="item"> <el-col class="item">
@ -63,7 +64,8 @@
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
<ms-api-variable-advance :scenario-definition="scenarioDefinition" :append-to-body="appendToBody" :current-item="currentItem" :parameters="keyValues" ref="variableAdvance"/> <ms-api-variable-advance :scenario-definition="scenarioDefinition" :append-to-body="appendToBody"
:current-item="currentItem" :parameters="keyValues" ref="variableAdvance"/>
</div> </div>
</template> </template>
@ -84,7 +86,7 @@
isShowEnable: { isShowEnable: {
type: Boolean, type: Boolean,
}, },
unShowSelect:{ unShowSelect: {
type: Boolean, type: Boolean,
default: false default: false
}, },
@ -137,9 +139,9 @@
advanced(item) { advanced(item) {
this.currentItem = item; this.currentItem = item;
// //
if(this.scenarioDefinition != undefined){ if (this.scenarioDefinition != undefined) {
this.$emit('editScenarioAdvance', this.currentItem); this.$emit('editScenarioAdvance', this.currentItem);
}else{ } else {
this.$refs.variableAdvance.open(); this.$refs.variableAdvance.open();
} }
}, },
@ -158,6 +160,7 @@
if (this.items.length < 2 || index === this.items.length - 2) { if (this.items.length < 2 || index === this.items.length - 2) {
return; return;
} }
this.change();
let thisRow = this.items[index]; let thisRow = this.items[index];
let nextRow = this.items[index + 1]; let nextRow = this.items[index + 1];
Vue.set(this.items, index + 1, thisRow); Vue.set(this.items, index + 1, thisRow);
@ -167,11 +170,11 @@
if (index === 0) { if (index === 0) {
return; return;
} }
this.change();
let thisRow = this.items[index]; let thisRow = this.items[index];
let lastRow = this.items[index - 1]; let lastRow = this.items[index - 1];
Vue.set(this.items, index - 1, thisRow); Vue.set(this.items, index - 1, thisRow);
Vue.set(this.items, index, lastRow) Vue.set(this.items, index, lastRow)
}, },
reload() { reload() {
this.loading = true this.loading = true
@ -228,6 +231,13 @@
}, },
}, },
created() { created() {
if (this.items) {
for (let i = 0; i < this.items.length; i++) {
if (!this.items[i]) {
this.items.splice(i, 1);
}
}
}
if (this.items.length === 0 || this.items[this.items.length - 1].name) { if (this.items.length === 0 || this.items[this.items.length - 1].name) {
this.items.push(new KeyValue({enable: true, name: '', value: ''})); this.items.push(new KeyValue({enable: true, name: '', value: ''}));
} }

View File

@ -1,21 +1,19 @@
<template> <template>
<el-card class="card-content" v-if="isShow && !loading"> <el-card class="card-content" v-if="isShow && !loading">
<el-button-group v-if="currentApi.id" style="z-index: 10; position: fixed;"> <el-button-group v-if="currentApi.id" style="z-index: 10; position: fixed;">
<el-tooltip class="item" effect="dark" :content="$t('api_test.definition.api_title')" placement="left"> <el-button class="item" plain :class="{active: showApiList}" @click="changeTab('api')" size="small">
<el-button plain :class="{active: showApiList}" @click="changeTab('api')" size="small">API</el-button> API
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('commons.test')" placement="top">
<el-button plain :class="{active: showTest}" @click="changeTab('test')" size="small">TEST</el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('api_test.definition.case_title')" placement="top">
<el-button plain :class="{active: showTestCaseList}" @click="changeTab('testCase')" size="small">CASE
</el-button> </el-button>
</el-tooltip> <el-button class="item" plain :class="{active: showTest}" @click="changeTab('test')" size="small">
TEST
<el-tooltip class="item" effect="dark" content="Mock设置" placement="right" </el-button>
<el-button class="item" plain :class="{active: showTestCaseList}" @click="changeTab('testCase')" size="small">
CASE
</el-button>
<el-button class="item" plain :class="{active: showMock}" @click="changeTab('mock')" size="small"
v-if="currentProtocol === 'HTTP' || currentProtocol === 'TCP'"> v-if="currentProtocol === 'HTTP' || currentProtocol === 'TCP'">
<el-button plain :class="{active: showMock}" @click="changeTab('mock')" size="small"> MOCK</el-button> MOCK
</el-tooltip> </el-button>
</el-button-group> </el-button-group>
<div style="height: 40px"></div> <div style="height: 40px"></div>
@ -110,19 +108,19 @@
</template> </template>
<script> <script>
import MsApiConfig from "./ApiConfig"; import MsApiConfig from "./ApiConfig";
import MsRunTestHttpPage from "./runtest/RunTestHTTPPage"; import MsRunTestHttpPage from "./runtest/RunTestHTTPPage";
import MsRunTestTcpPage from "./runtest/RunTestTCPPage"; import MsRunTestTcpPage from "./runtest/RunTestTCPPage";
import MsRunTestSqlPage from "./runtest/RunTestSQLPage"; import MsRunTestSqlPage from "./runtest/RunTestSQLPage";
import MsRunTestDubboPage from "./runtest/RunTestDubboPage"; import MsRunTestDubboPage from "./runtest/RunTestDubboPage";
import MockTab from "@/business/components/api/definition/components/mock/MockTab"; import MockTab from "@/business/components/api/definition/components/mock/MockTab";
import TcpMockConfig from "@/business/components/api/definition/components/mock/TcpMockConfig"; import TcpMockConfig from "@/business/components/api/definition/components/mock/TcpMockConfig";
import ApiCaseSimpleList from "./list/ApiCaseSimpleList"; import ApiCaseSimpleList from "./list/ApiCaseSimpleList";
import MsApiCaseList from "./case/ApiCaseList"; import MsApiCaseList from "./case/ApiCaseList";
import {getUUID} from "@/common/js/utils"; import {getUUID} from "@/common/js/utils";
import {TYPE_TO_C} from "@/business/components/api/automation/scenario/Setting"; import {TYPE_TO_C} from "@/business/components/api/automation/scenario/Setting";
export default { export default {
name: "EditCompleteContainer", name: "EditCompleteContainer",
components: { components: {
MsApiConfig, MsApiConfig,
@ -252,7 +250,7 @@ export default {
saveApi(data) { saveApi(data) {
this.$emit("saveApi", data); this.$emit("saveApi", data);
if (data != null && data.tags !== 'null' && data.tags !== undefined) { if (data != null && data.tags !== 'null' && data.tags !== undefined) {
if (Object.prototype.toString.call(data.tags)==="[object String]") { if (Object.prototype.toString.call(data.tags) === "[object String]") {
data.tags = JSON.parse(data.tags); data.tags = JSON.parse(data.tags);
} }
} }
@ -339,30 +337,30 @@ export default {
} }
} }
}, },
}; };
</script> </script>
<style scoped> <style scoped>
.active { .active {
border: solid 1px #6d317c !important; border: solid 1px #6d317c !important;
background-color: var(--primary_color) !important; background-color: var(--primary_color) !important;
color: #FFFFFF !important; color: #FFFFFF !important;
} }
.case-button { .case-button {
border-left: solid 1px var(--primary_color); border-left: solid 1px var(--primary_color);
} }
.item { .item {
border: solid 1px var(--primary_color); border: solid 1px var(--primary_color);
} }
.api-case-simple-list >>> .el-table { .api-case-simple-list >>> .el-table {
height: calc(100vh - 262px) !important; height: calc(100vh - 262px) !important;
} }
/deep/ .ms-opt-btn { /deep/ .ms-opt-btn {
position: fixed; position: fixed;
right: 50px; right: 50px;
z-index: 1; z-index: 1;
@ -370,5 +368,5 @@ export default {
float: right; float: right;
margin-right: 20px; margin-right: 20px;
margin-top: 5px; margin-top: 5px;
} }
</style> </style>