Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qa-platform-ui
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
QA
qa-platform-ui
Commits
67f8b81a
Commit
67f8b81a
authored
Jun 02, 2021
by
王晓铜
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
场景修改添加字段
parent
b96c0a87
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
151 additions
and
183 deletions
+151
-183
EditScene.vue
src/views/auto/EditScene.vue
+151
-183
No files found.
src/views/auto/EditScene.vue
View file @
67f8b81a
...
@@ -62,186 +62,149 @@
...
@@ -62,186 +62,149 @@
<!-- 编辑场景用例 -->
<!-- 编辑场景用例 -->
<el-dialog
title=
"编辑场景用例"
:visible.sync=
"editDialogVisible"
width=
"60%"
>
<el-dialog
title=
"编辑场景用例"
:visible.sync=
"editDialogVisible"
width=
"60%"
>
<!--
<el-card>
-->
<!--
<el-card>
-->
<el-form>
<el-form>
<!--
<el-form-item
label=
"用例名称:"
style=
"width:310px;"
>
<el-form-item
label=
"用例名称:"
style=
"width:310px;"
>
<el-input
v-model=
"caseForm.name"
:disabled=
"true"
></el-input>
<el-input
v-model=
"sceneCaseForm.name"
></el-input>
</el-form-item>
-->
</el-form-item>
<el-collapse
v-model=
"activeNames"
>
<el-collapse
v-model=
"activeNames"
>
<!-- Headers -->
<!-- Headers -->
<el-collapse-item
name=
"1"
title=
"请求头"
>
<el-collapse-item
name=
"1"
title=
"请求头"
>
<el-form-item>
<el-form-item>
<el-row>
<el-row>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数名称
</div>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数名称
</div>
</el-col>
</el-col>
<el-col
:span=
"10"
>
<el-col
:span=
"10"
>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数值
</div>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数值
</div>
</el-col>
</el-col>
<el-col
:span=
"2"
>
<el-col
:span=
"2"
>
<div
class=
"grid-content"
style=
"margin-left:25px"
>
操作
</div>
<div
class=
"grid-content"
style=
"margin-left:25px"
>
操作
</div>
</el-col>
</el-col>
</el-row>
</el-row>
<el-row
v-for=
"(item,index) in headersList"
:key=
"index"
>
<el-row
v-for=
"(item,index) in headersList"
:key=
"index"
>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<div
class=
"div-top"
>
<div
class=
"div-top"
>
<el-input
v-model.trim=
"item.paramsName"
placeholder=
"请输入参数名称"
></el-input>
<el-input
v-model.trim=
"item.paramsName"
placeholder=
"请输入参数名称"
></el-input>
</div>
</div>
</el-col>
</el-col>
<el-col
:span=
"10"
>
<el-col
:span=
"10"
>
<div
class=
"div-left"
>
<div
class=
"div-left"
>
<el-input
v-model.trim=
"item.paramsValue"
placeholder=
"请输入参数值"
type=
"textarea"
></el-input>
<el-input
v-model.trim=
"item.paramsValue"
placeholder=
"请输入参数值"
type=
"textarea"
></el-input>
</div>
</div>
</el-col>
</el-col>
<el-col
:span=
"2"
>
<el-col
:span=
"2"
>
<div
class=
"div-operation"
>
<div
class=
"div-operation"
>
<el-button
size=
"mini"
type=
"danger"
@
click=
"advanceDelss(index)"
icon=
"el-icon-delete"
style=
"height:40px;margin-left:20px"
>
删除
</el-button>
<el-button
size=
"mini"
type=
"danger"
@
click=
"advanceDelss(index)"
icon=
"el-icon-delete"
style=
"height:40px;margin-left:20px"
>
删除
</el-button>
</div>
</div>
</el-col>
</el-col>
</el-row>
</el-row>
</el-form-item>
</el-form-item>
<el-button
type=
"success"
plain
@
click=
"AddHeaderListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
<el-button
type=
"success"
plain
@
click=
"AddHeaderListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</el-collapse-item>
</el-collapse-item>
<!-- 请求参数 -->
<!-- 请求参数 -->
<el-collapse-item
name=
"2"
title=
"请求参数"
>
<el-collapse-item
name=
"2"
title=
"请求参数"
>
<el-form-item>
<el-form-item>
<el-row>
<el-row>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数名称
</div>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数名称
</div>
</el-col>
</el-col>
<el-col
:span=
"10"
>
<el-col
:span=
"10"
>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数值
</div>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数值
</div>
</el-col>
</el-col>
<el-col
:span=
"2"
>
<el-col
:span=
"2"
>
<div
class=
"grid-content"
style=
"margin-left:25px"
>
操作
</div>
<div
class=
"grid-content"
style=
"margin-left:25px"
>
操作
</div>
</el-col>
</el-col>
</el-row>
</el-row>
<el-row
v-for=
"(item,index) in requestParamsList"
:key=
"index"
>
<el-row
v-for=
"(item,index) in requestParamsList"
:key=
"index"
>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<div
class=
"div-top"
>
<div
class=
"div-top"
>
<el-input
v-model.trim=
"item.paramsName"
placeholder=
"请输入参数名称"
></el-input>
<el-input
v-model.trim=
"item.paramsName"
placeholder=
"请输入参数名称"
></el-input>
</div>
</div>
</el-col>
</el-col>
<el-col
:span=
"10"
>
<el-col
:span=
"10"
>
<div
class=
"div-left"
>
<div
class=
"div-left"
>
<el-input
v-model.trim=
"item.paramsValue"
placeholder=
"请输入参数值"
type=
"textarea"
></el-input>
<el-input
v-model.trim=
"item.paramsValue"
placeholder=
"请输入参数值"
type=
"textarea"
></el-input>
</div>
</div>
</el-col>
</el-col>
<el-col
:span=
"2"
>
<el-col
:span=
"2"
>
<div
class=
"div-operation"
>
<div
class=
"div-operation"
>
<el-button
size=
"mini"
type=
"danger"
@
click=
"requestParamsDel(index)"
icon=
"el-icon-delete"
style=
"height:40px;margin-left:20px"
>
删除
</el-button>
<el-button
size=
"mini"
type=
"danger"
@
click=
"requestParamsDel(index)"
icon=
"el-icon-delete"
style=
"height:40px;margin-left:20px"
>
删除
</el-button>
</div>
</div>
</el-col>
</el-col>
</el-row>
</el-row>
</el-form-item>
</el-form-item>
<el-button
type=
"success"
plain
@
click=
"AddRequestParamsListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
<el-button
type=
"success"
plain
@
click=
"AddRequestParamsListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</el-collapse-item>
</el-collapse-item>
<!-- 响应解析列表 -->
<!-- 参数列表 -->
<el-collapse-item
name=
"3"
title=
"响应提取"
>
<!--
<el-collapse-item
name=
"3"
title=
"参数变量"
>
<el-form-item>
<el-form-item>
<el-row>
<el-row>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
变量名称
</div>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数名称
</div>
</el-col>
</el-col>
<el-col
:span=
"10"
>
<el-col
:span=
"10"
>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
json路径表达式
</div>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
参数值
</div>
</el-col>
</el-col>
<el-col
:span=
"2"
>
<el-col
:span=
"2"
>
<div
class=
"grid-content"
style=
"margin-left:25px"
>
操作
</div>
<div
class=
"grid-content"
style=
"margin-left:25px"
>
操作
</div>
</el-col>
</el-col>
</el-row>
</el-row>
<el-row
v-for=
"(item,index) in responseList"
:key=
"index"
>
<el-row
v-for=
"(item,index) in paramsList"
:key=
"index"
>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<div
class=
"div-top"
>
<div
class=
"div-top"
>
<el-input
v-model.trim=
"item.paramsName"
placeholder=
"请输入变量名称"
></el-input>
<el-input
v-model.trim=
"item.paramsName"
placeholder=
"请输入参数名称"
></el-input>
</div>
</div>
</el-col>
</el-col>
<el-col
:span=
"10"
>
<el-col
:span=
"10"
>
<div
class=
"div-left"
>
<div
class=
"div-left"
>
<el-input
v-model.trim=
"item.paramsValue"
placeholder=
"请输入表达式"
type=
"textarea"
></el-input>
<el-input
v-model.trim=
"item.paramsValue"
placeholder=
"请输入参数值"
type=
"textarea"
></el-input>
</div>
</div>
</el-col>
</el-col>
<el-col
:span=
"2"
>
<el-col
:span=
"2"
>
<div
class=
"div-operation"
>
<div
class=
"div-operation"
>
<el-button
size=
"mini"
type=
"danger"
@
click=
"responeDel(index)"
icon=
"el-icon-delete"
style=
"height:40px;margin-left:20px"
>
删除
</el-button>
<el-button
size=
"mini"
type=
"danger"
@
click=
"paramsDel(index)"
icon=
"el-icon-delete"
style=
"height:40px;margin-left:20px"
>
删除
</el-button>
</div>
</div>
</el-col>
</el-col>
</el-row>
</el-row>
</el-form-item>
</el-form-item>
<el-button
type=
"success"
plain
@
click=
"AddResponseListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
<el-button
type=
"success"
plain
@
click=
"AddParamsListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</el-collapse-item>
</el-collapse-item>
-->
<!-- 断言 -->
<!-- 响应解析列表 -->
<el-collapse-item
name=
"4"
title=
"结果断言"
>
<el-collapse-item
name=
"3"
title=
"响应提取"
>
<el-table
:data=
"assertionList"
border
style=
"width:100%;margin-top: 15px;"
>
<el-table-column
label=
"Json表达式"
width=
"350"
>
<el-form-item>
<template
slot-scope=
"scope"
>
<el-row>
<el-input
v-model=
"scope.row.check"
>
<el-col
:span=
"6"
>
</el-input>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
变量名称
</div>
</
template
>
</el-col>
</el-table-column>
<el-col
:span=
"10"
>
<el-table-column
label=
"比较符"
width=
"250"
>
<div
class=
"grid-content"
style=
"margin-left:15px"
>
json路径表达式
</div>
<
template
slot-scope=
"scope"
>
</el-col>
<el-select
v-model=
"scope.row.comparator"
placeholder=
"请选择"
>
<el-col
:span=
"2"
>
<el-option
v-for=
"item in selectAssertionList"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
></el-option>
<div
class=
"grid-content"
style=
"margin-left:25px"
>
操作
</div>
</el-select>
</el-col>
</
template
>
</el-row>
</el-table-column>
<el-row
v-for=
"(item,index) in responseList"
:key=
"index"
>
<el-table-column
label=
"预期结果"
width=
"350"
>
<el-col
:span=
"6"
>
<
template
slot-scope=
"scope"
>
<div
class=
"div-top"
>
<el-input
v-model=
"scope.row.expect"
>
<el-input
v-model.trim=
"item.paramsName"
placeholder=
"请输入变量名称"
></el-input>
</el-input>
</div>
</
template
>
</el-col>
</el-table-column>
<el-col
:span=
"10"
>
<el-table-column
label=
"操作"
>
<div
class=
"div-left"
>
<
template
slot-scope=
"scope"
>
<el-input
v-model.trim=
"item.paramsValue"
placeholder=
"请输入表达式"
type=
"textarea"
></el-input>
<el-button
size=
"mini"
type=
"danger"
icon=
"el-icon-delete"
@
click=
"AssertionDelete(scope.$index)"
>
删除
</el-button>
</div>
</
template
>
</el-col>
</el-table-column>
<el-col
:span=
"2"
>
</el-table>
<div
class=
"div-operation"
>
<el-button
type=
"success"
plain
@
click=
"AddAssertionListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
<el-button
size=
"mini"
type=
"danger"
@
click=
"responeDel(index)"
icon=
"el-icon-delete"
style=
"height:40px;margin-left:20px"
>
删除
</el-button>
</el-collapse-item>
</div>
</el-collapse>
</el-col>
<div
style=
"margin-top:20px;margin-left:400px"
>
</el-row>
<el-button
@
click=
"cancelCaseFrom"
>
取 消
</el-button>
</el-form-item>
<el-button
type=
"primary"
@
click=
"addCaseFrom"
>
确 定
</el-button>
<el-button
type=
"success"
plain
@
click=
"AddResponseListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</div>
</el-collapse-item>
</el-form>
<!-- 断言 -->
<el-collapse-item
name=
"4"
title=
"结果断言"
>
<el-table
:data=
"assertionList"
border
style=
"width:100%;margin-top: 15px;"
>
<el-table-column
label=
"Json表达式"
width=
"350"
>
<template
slot-scope=
"scope"
>
<el-input
v-model=
"scope.row.check"
>
</el-input>
</
template
>
</el-table-column>
<el-table-column
label=
"比较符"
width=
"250"
>
<
template
slot-scope=
"scope"
>
<el-select
v-model=
"scope.row.comparator"
placeholder=
"请选择"
>
<el-option
v-for=
"item in selectAssertionList"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
></el-option>
</el-select>
</
template
>
</el-table-column>
<el-table-column
label=
"预期结果"
width=
"350"
>
<
template
slot-scope=
"scope"
>
<el-input
v-model=
"scope.row.expect"
>
</el-input>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"danger"
icon=
"el-icon-delete"
@
click=
"AssertionDelete(scope.$index)"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<el-button
type=
"success"
plain
@
click=
"AddAssertionListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</el-collapse-item>
</el-collapse>
<div
style=
"margin-top:20px;margin-left:400px"
>
<el-button
@
click=
"cancelCaseFrom"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"addCaseFrom"
>
确 定
</el-button>
</div>
</el-form>
<!-- </el-card> -->
<!-- </el-card> -->
</el-dialog>
</el-dialog>
</div>
</div>
...
@@ -259,7 +222,8 @@ export default {
...
@@ -259,7 +222,8 @@ export default {
data
()
{
data
()
{
return
{
return
{
col
:
[
col
:
[
{
label
:
'
接口名称
'
,
prop
:
'
interfaceName
'
},
{
label
:
'
用例名称
'
,
prop
:
'
name
'
},
{
label
:
'
接口Url
'
,
prop
:
'
interfaceUrl
'
},
{
label
:
'
模块名称
'
,
prop
:
'
moduleName
'
}
{
label
:
'
模块名称
'
,
prop
:
'
moduleName
'
}
],
],
queryProjectList
:
{
queryProjectList
:
{
...
@@ -325,7 +289,7 @@ export default {
...
@@ -325,7 +289,7 @@ export default {
},
},
sequence
:
0
,
sequence
:
0
,
caseId
:
''
,
caseId
:
''
,
caseN
ame
:
''
,
n
ame
:
''
,
headers
:
''
,
headers
:
''
,
parameters
:
''
,
parameters
:
''
,
extract
:
''
,
extract
:
''
,
...
@@ -431,6 +395,7 @@ export default {
...
@@ -431,6 +395,7 @@ export default {
// 获取场景用例列表
// 获取场景用例列表
getSceneCaseList
()
{
getSceneCaseList
()
{
getSceneCaseList
(
this
.
sceneCaseInfo
).
then
((
resp
)
=>
{
getSceneCaseList
(
this
.
sceneCaseInfo
).
then
((
resp
)
=>
{
console
.
log
(
'
333
'
,
this
.
sceneTestcaseList
)
this
.
sceneTestcaseList
=
resp
.
data
.
data
this
.
sceneTestcaseList
=
resp
.
data
.
data
})
})
},
},
...
@@ -463,6 +428,7 @@ export default {
...
@@ -463,6 +428,7 @@ export default {
this
.
sceneTestcaseList
.
push
({
this
.
sceneTestcaseList
.
push
({
moduleName
:
this
.
sceneCaseForm
.
moduleFrom
.
name
,
moduleName
:
this
.
sceneCaseForm
.
moduleFrom
.
name
,
interfaceName
:
this
.
sceneCaseForm
.
interfaceFrom
.
name
,
interfaceName
:
this
.
sceneCaseForm
.
interfaceFrom
.
name
,
interfaceUrl
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
interfaceUrl
,
name
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
name
,
name
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
name
,
headers
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
headers
,
headers
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
headers
,
parameters
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
parameters
,
parameters
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
parameters
,
...
@@ -489,11 +455,12 @@ export default {
...
@@ -489,11 +455,12 @@ export default {
// 编辑场景用例
// 编辑场景用例
editeSceneFrom
(
row
)
{
editeSceneFrom
(
row
)
{
console
.
log
(
'
88
'
,
row
)
this
.
editDialogVisible
=
true
this
.
editDialogVisible
=
true
this
.
sceneCaseForm
.
sequence
=
row
.
sequence
this
.
sceneCaseForm
.
sequence
=
row
.
sequence
this
.
sceneCaseForm
.
interfaceId
=
row
.
interfaceId
this
.
sceneCaseForm
.
interfaceId
=
row
.
interfaceId
this
.
sceneCaseForm
.
caseId
=
row
.
id
this
.
sceneCaseForm
.
caseId
=
row
.
id
this
.
sceneCaseForm
.
caseN
ame
=
row
.
name
this
.
sceneCaseForm
.
n
ame
=
row
.
name
var
newHeaders
=
JSON
.
parse
(
row
.
headers
)
var
newHeaders
=
JSON
.
parse
(
row
.
headers
)
// 请求头(将json字符串转化为对象)
// 请求头(将json字符串转化为对象)
this
.
headersList
=
[]
this
.
headersList
=
[]
...
@@ -641,6 +608,7 @@ export default {
...
@@ -641,6 +608,7 @@ export default {
this
.
sceneTestcaseList
[
i
].
parameters
=
this
.
sceneCaseForm
.
parameters
this
.
sceneTestcaseList
[
i
].
parameters
=
this
.
sceneCaseForm
.
parameters
this
.
sceneTestcaseList
[
i
].
extract
=
this
.
sceneCaseForm
.
extract
this
.
sceneTestcaseList
[
i
].
extract
=
this
.
sceneCaseForm
.
extract
this
.
sceneTestcaseList
[
i
].
validate
=
this
.
sceneCaseForm
.
validate
this
.
sceneTestcaseList
[
i
].
validate
=
this
.
sceneCaseForm
.
validate
this
.
sceneTestcaseList
[
i
].
name
=
this
.
sceneCaseForm
.
name
}
}
}
}
this
.
editDialogVisible
=
false
this
.
editDialogVisible
=
false
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment