diff --git a/src/views/xm/core/xmTestCase/XmTestCaseEdit.vue b/src/views/xm/core/xmTestCase/XmTestCaseEdit.vue
index 49302bbb..ea9b61c8 100644
--- a/src/views/xm/core/xmTestCase/XmTestCaseEdit.vue
+++ b/src/views/xm/core/xmTestCase/XmTestCaseEdit.vue
@@ -100,11 +100,11 @@
{{queryStrCpd||'暂无'}}
-
+
操作
-
+
@@ -140,11 +140,11 @@
-
-
+
+
操作
-
+
@@ -181,7 +181,7 @@
操作
-
+
@@ -217,7 +217,7 @@
操作
-
+
@@ -259,18 +259,18 @@
- {{basicAuth.username}}
+ {{autoStep.authData.username}}
-
+
- {{basicAuth.password||'暂无'}}
+ {{autoStep.authData.password||'暂无'}}
-
+
@@ -278,10 +278,10 @@
- {{bearerToken.bearerToken}}
+ {{autoStep.authData.bearerToken}}
-
+
@@ -361,7 +361,7 @@
import util from '@/common/js/util';//全局公共库
import config from "@/common/config"; //全局公共库import
import { initDicts, addXmTestCase,editXmTestCase,editSomeFieldsXmTestCase } from '@/api/xm/core/xmTestCase';
- import {autoStepToAxios,initAutoStep,calcAutoStep,initEnvVars} from '@/api/xm/core/XmTestAutoStep.js';//全局公共库
+ import {autoStepToAxios,initEnvVars} from '@/api/xm/core/XmTestAutoStep.js';//全局公共库
import { mapGetters } from 'vuex'
import XmMenuSelect from '../xmMenu/XmMenuSelect'
@@ -389,7 +389,7 @@ import JsonViewer from 'vue-json-viewer'
computed: {
...mapGetters([ 'userInfo' ]),
queryStrCpd(){
- return this.paramsList.filter(k=>k.id).map(k=>k.id+'='+k.value).join("&")
+ return this.autoStep.params.filter(k=>k.id).map(k=>k.id+'='+k.value).join("&")
}
},
@@ -406,20 +406,14 @@ import JsonViewer from 'vue-json-viewer'
if(visible==true){
this.initData()
}
- },
- queryStr(){
- var paramsList=[]
- this.queryStr.split("&").forEach(k=>{
- var k2=k.split("=")
- var p={}
- if(k2.length>1){
- p={id:k2[0],value:k2[1]}
- }else{
- p={id:k2[0],value:''}
- }
- paramsList.push(p)
- })
- this.paramsList=paramsList
+ },
+ 'autoStep.bodyType'(){
+ if(this.autoStep.bodyType=='form-data'||this.autoStep.bodyType=='x-www-form-urlencoded'){
+ this.autoStep.body=[]
+ }else{
+ this.autoStep.body=''
+ }
+
}
},
data() {
@@ -449,41 +443,33 @@ import JsonViewer from 'vue-json-viewer'
activeTab:'1',
testCasedbVisible:false,
+ queryStr:'',
testRes:{},
resDataVisible:false,
- paramsList:[{id:'',value:''}],//[{id:'',value:''}]
- queryStr:'',
-
- bodyList:[{id:'',value:''}],//[{id:'',value:''}]
- bodyJson:'',
- bodyXml:'',
-
-
- cookieList:[{id:'',value:''}],//[{id:'',value:''}]
-
- headerList:[{id:'',value:''}],//[{id:'',value:''}]
- authTypeList:[{id:'',value:''}],//[{id:'',value:''}]
- bearerToken:{
- bearerToken:''
- },
-
- basicAuth:{
- username:'',
- password:'',
- },
-
-
autoStep:{
url:'',
method:'GET',
authType:'none',
- authData:{},
+ authData:{
+ },
bodyType:'json',
params:[],
body:[],
cookies:[],
expectResult:''
},
+ autoStepInit:{
+ url:'',
+ method:'',
+ authType:'',
+ authData:{
+ },
+ bodyType:'',
+ params:[],
+ body:[],
+ cookies:[],
+ expectResult:''
+ }
}//end return
},//end data
@@ -525,40 +511,53 @@ import JsonViewer from 'vue-json-viewer'
});
},
initQueryStr(){
- this.queryStr=this.paramsList.map(k=>k.id+'='+k.value).join("&")
+ this.queryStr=this.autoStep.params.map(k=>k.id+'='+k.value).join("&")
+ },
+ onQueryStrChange(){
+ this.autoStep.params=[]
+ this.queryStr.split("&").forEach(k=>{
+ var k2=k.split("=")
+ var p={}
+ if(k2.length>1){
+ p={id:k2[0],value:k2[1]}
+ }else{
+ p={id:k2[0],value:''}
+ }
+ this.autoStep.params.push(p)
+ })
},
addParamsRow(row,index){
- this.paramsList.splice(index+1,0,{id:'',value:''})
+ this.autoStep.params.splice(index+1,0,{id:'',value:''})
},
deleteParamsRow(row,index){
- this.paramsList.splice(index,1)
+ this.autoStep.params.splice(index,1)
},
addBodyRow(row,index){
- this.bodyList.splice(index+1,0,{id:'',value:''})
+ this.autoStep.body.splice(index+1,0,{id:'',value:''})
},
deleteBodyRow(row,index){
- this.bodyList.splice(index,1)
+ this.autoStep.body.splice(index,1)
},
addCookieRow(row,index){
- this.cookieList.splice(index+1,0,{id:'',value:''})
+ this.autoStep.cookies.splice(index+1,0,{id:'',value:''})
},
deleteCookieRow(row,index){
- this.cookieList.splice(index,1)
+ this.autoStep.cookies.splice(index,1)
},
addHeaderRow(row,index){
- this.headerList.splice(index+1,0,{id:'',value:''})
+ this.autoStep.headers.splice(index+1,0,{id:'',value:''})
},
deleteHeaderRow(row,index){
- this.headerList.splice(index,1)
+ this.autoStep.headers.splice(index,1)
},
saveAutoStep(){
- var autoStep=calcAutoStep(this)
+ var autoStep=this.autoStep
this.editSomeFields(this.editForm,'autoStep',JSON.stringify(autoStep));
},
sendMsgForTestSetting(){
- var autoStepObj=calcAutoStep(this);
+ var autoStepObj=this.autoStep;
if(!autoStepObj.url){
this.$notify({position:'bottom-left',showClose:true,message:'url不能为空',type: 'error'})
return;
@@ -617,7 +616,13 @@ import JsonViewer from 'vue-json-viewer'
this.editForm.id=null
}
- initAutoStep(this,this.editForm.autoStep);
+
+ if(!this.editForm.autoStep){
+ this.autoStep={...this.autoStepInit}
+ }else{
+ this.autoStep=JSON.parse(this.editForm.autoStep)
+ }
+ this.initQueryStr();
this.editFormBak={...this.editForm}
},
editSomeFields(row,fieldName,$event){