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
cdc13c25
Commit
cdc13c25
authored
May 27, 2021
by
王晓铜
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'xiaotong'
parents
62531a5c
6aec6e96
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
359 additions
and
153 deletions
+359
-153
dev.env.js
config/dev.env.js
+7
-2
package-lock.json
package-lock.json
+7
-7
package.json
package.json
+1
-1
getAutoReport.js
src/api/getAutoReport.js
+16
-0
index.js
src/router/index.js
+14
-0
AddCase.vue
src/views/auto/AddCase.vue
+6
-44
EditScene.vue
src/views/auto/EditScene.vue
+9
-72
InterfaceList.vue
src/views/auto/InterfaceList.vue
+0
-3
ModelList.vue
src/views/auto/ModelList.vue
+13
-5
ProjectList.vue
src/views/auto/ProjectList.vue
+24
-19
ReportDetail.vue
src/views/auto/ReportDetail.vue
+107
-0
ReportList.vue
src/views/auto/ReportList.vue
+145
-0
SceneList.vue
src/views/auto/SceneList.vue
+10
-0
No files found.
config/dev.env.js
View file @
cdc13c25
...
...
@@ -5,7 +5,12 @@ const prodEnv = require('./prod.env')
module
.
exports
=
merge
(
prodEnv
,
{
NODE_ENV
:
'
"development"
'
,
ENV_CONFIG
:
'
"dev"
'
,
QA_PLATFORM
:
'
"//localhost:8082"
'
,
//
QA_PLATFORM: '"//localhost:8082"',
TESTDATA_API
:
'
"//testdata.liangkebang.com"
'
,
HOLMES
:
'
"//localhost:8084"
'
,
// HOLMES: '"//localhost:8084"',
QA_PLATFORM
:
'
"//qa-platform-fe.liangkebang.net/"
'
,
HOLMES
:
'
"//holmes-fe.liangkebang.net/"
'
,
// HOLMES: '"//192.168.29.143:8084/"'
})
package-lock.json
View file @
cdc13c25
...
...
@@ -4763,11 +4763,11 @@
}
},
"echarts"
:
{
"version"
:
"4.
8
.0"
,
"resolved"
:
"https://registry.npmjs.org/echarts/-/echarts-4.
8
.0.tgz"
,
"integrity"
:
"sha512-
YwShpug8fWngj/RlgxDaYrLBoD+LsZUArrusjNPHpAF+is+gGe38xx4W848AwWMGoi745t3OXM52JedNrv+F6g
=="
,
"version"
:
"4.
9
.0"
,
"resolved"
:
"https://registry.npmjs.org/echarts/-/echarts-4.
9
.0.tgz"
,
"integrity"
:
"sha512-
+ugizgtJ+KmsJyyDPxaw2Br5FqzuBnyOWwcxPKO6y0gc5caYcfnEUIlNStx02necw8jmKmTafmpHhGo4XDtEIA
=="
,
"requires"
:
{
"zrender"
:
"4.3.
1
"
"zrender"
:
"4.3.
2
"
}
},
"editorconfig"
:
{
...
...
@@ -16991,9 +16991,9 @@
}
},
"zrender"
:
{
"version"
:
"4.3.
1
"
,
"resolved"
:
"https://registry.npmjs.org/zrender/-/zrender-4.3.
1
.tgz"
,
"integrity"
:
"sha512-
CeH2TpJeCdG0TAGYoPSAcFX2ogdug1K7LIn9UO/q9HWqQ54gWhrMAlDP9AwWYMUDhrPe4VeazQ4DW3msD96nUQ
=="
"version"
:
"4.3.
2
"
,
"resolved"
:
"https://registry.npmjs.org/zrender/-/zrender-4.3.
2
.tgz"
,
"integrity"
:
"sha512-
bIusJLS8c4DkIcdiK+s13HiQ/zjQQVgpNohtd8d94Y2DnJqgM1yjh/jpDb8DoL6hd7r8Awagw8e3qK/oLaWr3g
=="
}
}
}
package.json
View file @
cdc13c25
...
...
@@ -15,7 +15,7 @@
},
"dependencies"
:
{
"
axios
"
:
"
^0.19.2
"
,
"
echarts
"
:
"
^4.
8
.0
"
,
"
echarts
"
:
"
^4.
9
.0
"
,
"
element-ui
"
:
"
^2.13.2
"
,
"
less
"
:
"
^3.11.1
"
,
"
sortablejs
"
:
"
^1.13.0
"
,
...
...
src/api/getAutoReport.js
0 → 100644
View file @
cdc13c25
import
request
from
'
@/utils/holmesRequest
'
export
function
getReportList
(
queryInfo
)
{
return
request
({
url
:
'
/auto/report/scene/batch/list
'
,
method
:
'
get
'
,
params
:
queryInfo
})
}
// 获取场景报告详情接口
export
function
getReportDetail
(
queryInfo
)
{
return
request
({
url
:
'
/auto/report/scene/batch/detail
'
,
method
:
'
get
'
,
params
:
queryInfo
})
}
src/router/index.js
View file @
cdc13c25
...
...
@@ -28,6 +28,9 @@ import AddCase from '../views/auto/AddCase'
import
SceneList
from
'
../views/auto/SceneList
'
import
EditScene
from
'
../views/auto/EditScene
'
import
RepayCallback
from
'
../views/vcc/RepayCallback
'
// 添加报告页面
import
ReportList
from
'
../views/auto/ReportList
'
import
ReportDetail
from
'
../views/auto/ReportDetail
'
Vue
.
use
(
Router
)
const
router
=
new
Router
({
...
...
@@ -162,6 +165,17 @@ const router = new Router({
{
'
path
'
:
'
/vcc/repaycallback
'
,
component
:
RepayCallback
},
// 添加报告
{
'
path
'
:
'
/auto/ReportList
'
,
name
:
ReportList
,
component
:
ReportList
},
{
'
path
'
:
'
/auto/ReportDetail
'
,
name
:
ReportDetail
,
component
:
ReportDetail
}
]
}
...
...
src/views/auto/AddCase.vue
View file @
cdc13c25
...
...
@@ -86,7 +86,7 @@
<el-button
type=
"success"
plain
@
click=
"AddRequestParamsListRow()"
style=
"margin-top:10px"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</el-collapse-item>
<!-- 参数列表 -->
<el-collapse-item
name=
"3"
title=
"参数列表"
>
<
!--
<
el-collapse-item
name=
"3"
title=
"参数列表"
>
<el-form-item>
<el-row>
<el-col
:span=
"6"
>
...
...
@@ -118,9 +118,9 @@
</el-row>
</el-form-item>
<el-button
type=
"success"
plain
@
click=
"AddParamsListRow()"
style=
"mragin-top:10px"
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-form-item>
<el-row>
<el-col
:span=
"6"
>
...
...
@@ -154,7 +154,7 @@
<el-button
type=
"success"
plain
@
click=
"AddResponseListRow()"
style=
"mragin-top:10px"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</el-collapse-item>
<!-- 断言 -->
<el-collapse-item
name=
"
5
"
title=
"结果断言"
>
<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"
>
...
...
@@ -210,7 +210,6 @@
<
script
>
import
{
getModulList
,
interfaceDetailList
}
from
'
@/api/getAotoInterface
'
import
{
getInterfaceDetail
,
addCase
,
editCase
}
from
'
@/api/getAutoCase
'
// import bus from '@/utils/bus'
export
default
{
data
()
{
return
{
...
...
@@ -235,7 +234,6 @@ export default {
interfaceName
:
''
,
interfaceId
:
''
,
headers
:
''
,
variables
:
''
,
parameters
:
''
,
extract
:
''
,
validate
:
''
...
...
@@ -267,14 +265,14 @@ export default {
]
},
isShow
:
false
,
activeNames
:
[
'
1
'
,
'
2
'
,
'
3
'
,
'
4
'
,
'
5
'
],
activeNames
:
[
'
1
'
,
'
2
'
,
'
3
'
,
'
4
'
],
interfaceForm
:
{
interfaceId
:
''
},
assertionList
:
[],
headersList
:
[],
requestParamsList
:
[],
paramsList
:
[],
//
paramsList: [],
responseList
:
[],
selectAssertionList
:
[
{
...
...
@@ -308,7 +306,6 @@ export default {
this
.
caseForm
.
interfaceId
=
''
this
.
headersList
=
[]
this
.
requestParamsList
=
[]
this
.
paramsList
=
[]
this
.
responseList
=
[]
this
.
assertionList
=
[]
}
else
{
...
...
@@ -338,15 +335,6 @@ export default {
paramsValue
:
newParamters
[
j
]
})
}
// 参数列表
var
newVariables
=
JSON
.
parse
(
row
.
variables
)
this
.
paramsList
=
[]
for
(
var
k
in
newVariables
)
{
this
.
paramsList
.
push
({
paramsName
:
k
,
paramsValue
:
newVariables
[
k
]
})
}
// 响应解析列表
var
newExtract
=
JSON
.
parse
(
row
.
extract
)
this
.
responseList
=
[]
...
...
@@ -371,7 +359,6 @@ export default {
},
// 模块下拉框改变事件
selectChangeModel
(
selectItem
)
{
console
.
log
(
selectItem
)
this
.
interfaceInfo
.
moduleId
=
selectItem
interfaceDetailList
(
this
.
interfaceInfo
).
then
((
resp
)
=>
{
this
.
interfaceList
=
resp
.
data
.
data
.
list
...
...
@@ -410,17 +397,6 @@ export default {
requestParamsDel
(
index
)
{
this
.
requestParamsList
.
splice
(
index
,
1
)
},
// 参数列表
AddParamsListRow
()
{
this
.
paramsList
.
push
({
paramsName
:
''
,
paramsValue
:
''
})
},
// 参数列表删除
paramsDel
(
index
)
{
this
.
paramsList
.
splice
(
index
,
1
)
},
// 添加响应解析列表
AddResponseListRow
()
{
this
.
responseList
.
push
({
...
...
@@ -440,14 +416,6 @@ export default {
expect
:
''
})
},
// 断言改变
// changeState(e) {
// if (e === true) {
// this.assertionList.isRequired = e
// } else {
// this.assertionList.isRequired = e
// }
// },
// 断言删除
AssertionDelete
(
index
)
{
this
.
assertionList
.
splice
(
index
,
1
)
...
...
@@ -467,12 +435,6 @@ export default {
requestParamsObj
[
item
.
paramsName
]
=
item
.
paramsValue
})
this
.
caseForm
.
parameters
=
JSON
.
stringify
(
requestParamsObj
)
// 参数列表
var
paramsListObj
=
{}
this
.
paramsList
.
forEach
((
item
)
=>
{
paramsListObj
[
item
.
paramsName
]
=
item
.
paramsValue
})
this
.
caseForm
.
variables
=
JSON
.
stringify
(
paramsListObj
)
// 响应解析列表
var
responseObj
=
{}
this
.
responseList
.
forEach
((
item
)
=>
{
...
...
src/views/auto/EditScene.vue
View file @
cdc13c25
...
...
@@ -61,7 +61,7 @@
</el-dialog>
<!-- 编辑场景用例 -->
<el-dialog
title=
"编辑场景用例"
:visible.sync=
"editDialogVisible"
width=
"60%"
>
<
el-card
>
<
!--
<el-card>
--
>
<el-form>
<!--
<el-form-item
label=
"用例名称:"
style=
"width:310px;"
>
<el-input
v-model=
"caseForm.name"
:disabled=
"true"
></el-input>
...
...
@@ -137,8 +137,7 @@
<el-button
type=
"success"
plain
@
click=
"AddRequestParamsListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</el-collapse-item>
<!-- 参数列表 -->
<el-collapse-item
name=
"3"
title=
"参数变量"
>
<!--
<el-collapse-item
name=
"3"
title=
"参数变量"
>
<el-form-item>
<el-row>
<el-col
:span=
"6"
>
...
...
@@ -170,9 +169,9 @@
</el-row>
</el-form-item>
<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-form-item>
<el-row>
...
...
@@ -207,7 +206,7 @@
<el-button
type=
"success"
plain
@
click=
"AddResponseListRow()"
class=
"el-icon-circle-plus"
>
添加行
</el-button>
</el-collapse-item>
<!-- 断言 -->
<el-collapse-item
name=
"
5
"
title=
"结果断言"
>
<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"
>
...
...
@@ -228,21 +227,6 @@
</el-input>
</
template
>
</el-table-column>
<!-- <el-table-column label="是否必填" width="150" style="text-align:center">
<template slot-scope="scope">
<el-switch v-model="scope.row.isRequired" active-color="#13ce66" inactive-color="#A9A9A9" active-text="是" inactive-text="否" @change="changeState()"></el-switch>
</template>
</el-table-column> -->
<!-- <el-table-column label="示例" width="300">
<template slot-scope="scope">
<el-input v-model="scope.row.examples"></el-input>
</template>
</el-table-column> -->
<!-- <el-table-column label="备注" width="250">
<template slot-scope="scope">
<el-input v-model="scope.row.remarks"></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>
...
...
@@ -258,7 +242,7 @@
<el-button
type=
"primary"
@
click=
"addCaseFrom"
>
确 定
</el-button>
</div>
</el-form>
<
/el-card
>
<
!-- </el-card> --
>
</el-dialog>
</div>
</template>
...
...
@@ -275,7 +259,6 @@ export default {
data
()
{
return
{
col
:
[
// { label: '序号', prop: 'sequence' },
{
label
:
'
接口名称
'
,
prop
:
'
interfaceName
'
},
{
label
:
'
模块名称
'
,
prop
:
'
moduleName
'
}
],
...
...
@@ -345,7 +328,6 @@ export default {
caseName
:
''
,
headers
:
''
,
parameters
:
''
,
variables
:
''
,
extract
:
''
,
validate
:
''
,
sceneId
:
''
...
...
@@ -370,10 +352,9 @@ export default {
interfaceId
:
''
},
editDialogVisible
:
false
,
activeNames
:
[
'
1
'
,
'
2
'
,
'
3
'
,
'
4
'
,
'
5
'
],
activeNames
:
[
'
1
'
,
'
2
'
,
'
3
'
,
'
4
'
],
headersList
:
[],
requestParamsList
:
[],
paramsList
:
[],
responseList
:
[],
assertionList
:
[],
caseForm
:
{
...
...
@@ -382,7 +363,6 @@ export default {
name
:
''
,
headers
:
''
,
parameters
:
''
,
variables
:
''
,
extract
:
''
,
validate
:
''
,
sequence
:
''
,
...
...
@@ -486,7 +466,6 @@ export default {
name
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
name
,
headers
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
headers
,
parameters
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
parameters
,
variables
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
variables
,
extract
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
extract
,
validate
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
validate
,
id
:
this
.
sceneCaseForm
.
caseDetialList
[
0
].
id
,
...
...
@@ -494,7 +473,7 @@ export default {
sceneId
:
this
.
sceneCaseInfo
.
sceneId
,
sequence
:
this
.
sceneTestcaseList
.
length
+
1
})
console
.
log
(
'
save----
'
,
this
.
sceneTestcaseList
)
//
console.log('save----', this.sceneTestcaseList)
this
.
DialogVisible
=
false
this
.
sceneCaseForm
.
moduleFrom
=
''
this
.
sceneCaseForm
.
interfaceFrom
=
''
...
...
@@ -510,7 +489,6 @@ export default {
// 编辑场景用例
editeSceneFrom
(
row
)
{
console
.
log
(
'
11
'
,
row
)
this
.
editDialogVisible
=
true
this
.
sceneCaseForm
.
sequence
=
row
.
sequence
this
.
sceneCaseForm
.
interfaceId
=
row
.
interfaceId
...
...
@@ -534,15 +512,6 @@ export default {
paramsValue
:
newParamters
[
j
]
})
}
// 参数列表
var
newVariables
=
JSON
.
parse
(
row
.
variables
)
this
.
paramsList
=
[]
for
(
var
k
in
newVariables
)
{
this
.
paramsList
.
push
({
paramsName
:
k
,
paramsValue
:
newVariables
[
k
]
})
}
// 响应解析列表
var
newExtract
=
JSON
.
parse
(
row
.
extract
)
this
.
responseList
=
[]
...
...
@@ -617,17 +586,6 @@ export default {
requestParamsDel
(
index
)
{
this
.
requestParamsList
.
splice
(
index
,
1
)
},
// 天机参数列表行
AddParamsListRow
()
{
this
.
paramsList
.
push
({
paramsName
:
''
,
paramsValue
:
''
})
},
// 删除参数列表行
paramsDel
(
index
)
{
this
.
paramsList
.
splice
(
index
,
1
)
},
// 添加响应解析行
AddResponseListRow
()
{
this
.
responseList
.
push
({
...
...
@@ -647,14 +605,6 @@ export default {
expect
:
''
})
},
// 断言改变
// changeState(e) {
// if (e === true) {
// this.assertionList.isRequired = e
// } else {
// this.assertionList.isRequired = e
// }
// },
// 删除断言行
AssertionDelete
(
index
)
{
this
.
assertionList
.
splice
(
index
,
1
)
...
...
@@ -674,12 +624,6 @@ export default {
requestParamsObj
[
item
.
paramsName
]
=
item
.
paramsValue
})
this
.
sceneCaseForm
.
parameters
=
JSON
.
stringify
(
requestParamsObj
)
// 参数列表
var
paramsListObj
=
{}
this
.
paramsList
.
forEach
((
item
)
=>
{
paramsListObj
[
item
.
paramsName
]
=
item
.
paramsValue
})
this
.
sceneCaseForm
.
variables
=
JSON
.
stringify
(
paramsListObj
)
// 响应解析列表
var
responseObj
=
{}
this
.
responseList
.
forEach
((
item
)
=>
{
...
...
@@ -695,13 +639,12 @@ export default {
)
{
this
.
sceneTestcaseList
[
i
].
headers
=
this
.
sceneCaseForm
.
headers
this
.
sceneTestcaseList
[
i
].
parameters
=
this
.
sceneCaseForm
.
parameters
this
.
sceneTestcaseList
[
i
].
variables
=
this
.
sceneCaseForm
.
variables
this
.
sceneTestcaseList
[
i
].
extract
=
this
.
sceneCaseForm
.
extract
this
.
sceneTestcaseList
[
i
].
validate
=
this
.
sceneCaseForm
.
validate
}
}
this
.
editDialogVisible
=
false
console
.
log
(
'
新集合信息
'
,
this
.
sceneTestcaseList
)
//
console.log('新集合信息', this.sceneTestcaseList)
},
cancelCaseFrom
()
{
this
.
editDialogVisible
=
false
...
...
@@ -713,12 +656,6 @@ export default {
this
.
sceneTestcaseList
.
splice
(
i
,
1
)
}
}
},
cellMouseEnter
()
{
console
.
log
(
'
鼠标移入事件
'
)
},
cellMouseLeave
()
{
console
.
log
(
'
鼠标移出事件
'
)
}
}
}
...
...
src/views/auto/InterfaceList.vue
View file @
cdc13c25
...
...
@@ -100,9 +100,6 @@ export default {
// 查询方法
queryData
()
{
this
.
getInterfaceDetailList
()
// this.queryModuleInfo.projectId = ''
// this.queryModuleInfo.moduleId = ''
// this.queryModuleInfo.interfaceName = ''
},
// 添加跳转页面
addPage
()
{
...
...
src/views/auto/ModelList.vue
View file @
cdc13c25
...
...
@@ -2,7 +2,7 @@
<div>
<el-card>
<div
class=
"filter"
>
<el-button
type=
"primary"
icon=
"el-icon-circle-plus"
@
click=
"
DialogVisible = true
"
>
新增
</el-button>
<el-button
type=
"primary"
icon=
"el-icon-circle-plus"
@
click=
"
addModelBtn
"
>
新增
</el-button>
</div>
<el-table
:data=
"modelList"
border
style=
"width: 100%;margin-top:20px"
>
<!--
<el-table-column
prop=
"id"
label=
"序号"
width=
"80px"
></el-table-column>
-->
...
...
@@ -38,7 +38,7 @@
<el-form-item
label=
"模块描述:"
prop=
"description"
style=
"width:400px"
>
<el-input
v-model=
"addModelForm.description"
></el-input>
</el-form-item>
<el-form-item
label=
"域名:"
prop=
"domain"
style=
"width:400px"
>
<el-form-item
label=
"域
名:"
prop=
"domain"
style=
"width:400px"
>
<el-input
v-model=
"addModelForm.domain"
></el-input>
</el-form-item>
</el-form>
...
...
@@ -61,7 +61,7 @@
<el-form-item
label=
"模块描述:"
prop=
"description"
style=
"width:400px"
>
<el-input
v-model=
"editModelForm.description"
></el-input>
</el-form-item>
<el-form-item
label=
"域名:"
prop=
"domain"
style=
"width:400px"
>
<el-form-item
label=
"域
名:"
prop=
"domain"
style=
"width:400px"
>
<el-input
v-model=
"editModelForm.domain"
></el-input>
</el-form-item>
</el-form>
...
...
@@ -88,6 +88,10 @@ export default {
pageNum
:
1
,
pageSize
:
10
},
queryProjectInfo
:
{
pageNum
:
1
,
pageSize
:
10
},
totalNum
:
0
,
modelList
:
[],
projectList
:
[],
...
...
@@ -144,7 +148,6 @@ export default {
},
created
()
{
this
.
getModelList
()
this
.
getProjectList
()
},
methods
:
{
// 获取模块列表
...
...
@@ -156,7 +159,7 @@ export default {
},
// 获取项目列表
getProjectList
()
{
getProjectList
(
this
.
query
Module
Info
).
then
((
resp
)
=>
{
getProjectList
(
this
.
query
Project
Info
).
then
((
resp
)
=>
{
this
.
projectList
=
resp
.
data
.
data
.
list
})
},
...
...
@@ -170,6 +173,11 @@ export default {
this
.
queryModuleInfo
.
pageNum
=
newPage
this
.
getModelList
()
},
// 新增按钮
addModelBtn
()
{
this
.
DialogVisible
=
true
this
.
getProjectList
()
},
// 添加模块按钮
addModelFrom
()
{
...
...
src/views/auto/ProjectList.vue
View file @
cdc13c25
...
...
@@ -16,7 +16,7 @@
<el-table-column
label=
"操作"
>
<slot
slot-scope=
"scope"
>
<el-button
type=
"warning"
icon=
"el-icon-edit"
@
click=
"openEditDialog(scope.row)"
>
编辑
</el-button>
<
!--
<el-button
type=
"danger"
icon=
"el-icon-delete"
@
click=
"delProjectFrom(scope.row)"
>
删除
</el-button>
--
>
<
el-button
type=
"danger"
icon=
"el-icon-delete"
@
click=
"delProjectFrom(scope.row)"
>
删除
</el-button
>
</slot>
</el-table-column>
</el-table>
...
...
@@ -58,7 +58,12 @@
</
template
>
<
script
>
import
{
getProjectList
,
addProject
,
editProject
}
from
'
@/api/getAotoInterface
'
import
{
getProjectList
,
addProject
,
editProject
,
delProject
}
from
'
@/api/getAotoInterface
'
export
default
{
data
()
{
return
{
...
...
@@ -185,23 +190,23 @@ export default {
.
catch
(()
=>
{})
},
// 删除项目
//
delProjectFrom(row) {
//
this.delProjectParam.projectId = row.id
//
this.openMessage('您确定要删除吗?', '删除', () => {
//
delProject(this.delProjectParam)
//
.then((resp) => {
//
if (resp.data.data === true) {
//
this.$message.success('删除成功!')
//
this.getProjectList()
//
} else if (resp.data.data === false) {
//
this.$message.error(resp.data.msg)
//
}
//
})
//
.catch((error) => {
//
this.$message({ type: 'error', message: error })
//
})
//
})
//
},
delProjectFrom
(
row
)
{
this
.
delProjectParam
.
projectId
=
row
.
id
this
.
openMessage
(
'
您确定要删除吗?
'
,
'
删除
'
,
()
=>
{
delProject
(
this
.
delProjectParam
)
.
then
((
resp
)
=>
{
if
(
resp
.
data
.
data
===
true
)
{
this
.
$message
.
success
(
'
删除成功!
'
)
this
.
getProjectList
()
}
else
if
(
resp
.
data
.
data
===
false
)
{
this
.
$message
.
error
(
resp
.
data
.
msg
)
}
})
.
catch
((
error
)
=>
{
this
.
$message
({
type
:
'
error
'
,
message
:
error
})
})
})
},
// 分页展示
handleSizeChange
(
newSize
)
{
this
.
queryModuleInfo
.
pageSize
=
newSize
...
...
src/views/auto/ReportDetail.vue
0 → 100644
View file @
cdc13c25
<
template
>
<div>
<el-card>
<div
style=
"font-size:20px;margin-left:300px;font-weigth:20px"
>
场景用例执行结果
</div>
<div
id=
"chartPie"
style=
"width:900px ;height:400px;"
></div>
</el-card>
<el-card>
<el-table>
</el-table>
</el-card>
</div>
</
template
>
<
script
>
import
{
getReportDetail
}
from
'
@/api/getAutoReport
'
export
default
{
name
:
''
,
data
()
{
return
{
queryReportDetail
:
{
namespace
:
''
,
batch
:
''
},
charts
:
''
,
opinion
:
[
'
成功
'
,
'
失败
'
],
opinionData
:
[],
reportDetailList
:
[]
}
},
created
()
{
this
.
$bus
.
$off
(
'
reportDetail
'
).
$on
(
'
reportDetail
'
,
(
row
)
=>
{
// console.log('参数信息', row)
this
.
queryReportDetail
.
namespace
=
row
.
namespace
this
.
queryReportDetail
.
batch
=
row
.
batch
this
.
getReportDetail
()
})
},
mounted
()
{},
methods
:
{
drawPieChart
(
id
)
{
this
.
charts
=
this
.
$echarts
.
init
(
document
.
getElementById
(
id
))
this
.
charts
.
setOption
({
tooltip
:
{
trigger
:
'
item
'
,
formatter
:
'
{a}<br/>{b}:{c} ({d}%)
'
},
legend
:
{
padding
:
[
10
,
50
,
0
,
0
],
left
:
300
,
data
:
this
.
opinion
,
bottom
:
0
},
series
:
[
{
name
:
'
运行结果
'
,
type
:
'
pie
'
,
radius
:
'
60%
'
,
center
:
[
'
40%
'
,
'
60%
'
],
// avoidLabelOverlap: true,
padding
:
[
5
,
10
,
5
,
10
],
itemStyle
:
{
emphasis
:
{
shadowBlur
:
10
,
shadowOffsetX
:
0
,
shadowColor
:
'
rgba(0, 0, 0, 0.5)
'
},
color
:
function
(
params
)
{
// 自定义颜色
var
colorList
=
[
'
#67C23A
'
,
'
#FF0000
'
]
return
colorList
[
params
.
dataIndex
]
}
},
data
:
this
.
opinionData
}
]
})
},
// 获取接口详情信息
getReportDetail
()
{
getReportDetail
(
this
.
queryReportDetail
).
then
((
resp
)
=>
{
this
.
opinionData
=
[]
console
.
log
(
'
返回信息
'
,
resp
)
this
.
opinionData
.
push
(
{
value
:
resp
.
data
.
data
.
fail
,
name
:
'
成功
'
},
{
value
:
resp
.
data
.
data
.
pass
,
name
:
'
失败
'
}
)
this
.
$nextTick
(()
=>
{
this
.
drawPieChart
(
'
chartPie
'
)
})
})
}
}
}
</
script
>
<
style
lang=
"less"
scoped
>
div-style {
font-size: 25px;
color: #858585;
margin-left: 300px;
}
</
style
>
src/views/auto/ReportList.vue
0 → 100644
View file @
cdc13c25
<
template
>
<div>
<el-card>
<div>
项目:
<el-select
v-model=
"projectId"
placeholder=
"请选择项目"
@
change=
"selectChange"
clearable
>
<el-option
v-for=
"item in projectList"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
></el-option>
</el-select>
场景:
<el-select
v-model=
"sceneId"
placeholder=
"请选择场景"
clearable
>
<el-option
v-for=
"item in sceneList"
:key=
"item.id"
:label=
"item.name"
:value=
"item.id"
></el-option>
</el-select>
<el-input
v-model=
"queryReportInfo.sceneName"
clearable
placeholder=
"请输入场景名称"
style=
"width: 300px;"
></el-input>
<el-button
type=
"primary"
style=
"margin-left:10px"
icon=
"el-icon-search"
@
click=
"queryData"
>
查询
</el-button>
<!--
<el-button
type=
"primary"
style=
"margin-left:10px"
icon=
"el-icon-circle-plus"
@
click=
"addPage"
>
新增
</el-button>
-->
</div>
<el-table
:data=
"reportList"
border
style=
"width: 100%;margin-top:20px"
>
<el-table-column
type=
'index'
width=
"50px"
></el-table-column>
<el-table-column
prop=
"projectName"
label=
"项目名称"
width=
"200px"
></el-table-column>
<el-table-column
prop=
"sceneName"
label=
"场景名称"
width=
"150px"
></el-table-column>
<el-table-column
prop=
"namespace"
label=
"运行环境"
width=
"150px"
></el-table-column>
<el-table-column
prop=
"createTime"
label=
"创建时间"
width=
"200px"
></el-table-column>
<el-table-column
label=
"操作"
>
<slot
slot-scope=
"scope"
>
<el-button
type=
"primary"
icon=
"el-icon-chat-line-square"
@
click=
"detailReportFrom(scope.row)"
>
详情
</el-button>
</slot>
</el-table-column>
</el-table>
<el-pagination
background
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page.sync=
"queryReportInfo.pageNum"
:page-size=
"queryReportInfo.pageSize"
layout=
"total, prev, pager, next"
:total=
"totalNum"
></el-pagination>
</el-card>
</div>
</
template
>
<
script
>
import
{
getProjectList
}
from
'
@/api/getAotoInterface
'
import
{
getSceneList
}
from
'
@/api/getAutoScene
'
import
{
getReportList
}
from
'
@/api/getAutoReport
'
// import bus from '@/utils/bus'
export
default
{
data
()
{
return
{
queryReportInfo
:
{
pageNum
:
1
,
pageSize
:
10
,
projectId
:
''
,
sceneId
:
''
,
sceneName
:
''
,
namespace
:
''
},
projectId
:
''
,
sceneId
:
''
,
namespace
:
''
,
queryProjectInfo
:
{
pageNum
:
1
,
pageSize
:
20
},
querySceneInfo
:
{
pageNum
:
1
,
pageSize
:
20
,
projectId
:
''
},
reportList
:
[],
projectList
:
[],
sceneList
:
[],
totalNum
:
0
}
},
created
()
{
this
.
getProjectList
()
this
.
getReportList
()
this
.
$bus
.
$off
(
'
reportmsg
'
).
$on
(
'
reportmsg
'
,
(
row
)
=>
{
console
.
log
(
'
参数信息
'
,
row
)
// 下拉框赋值
this
.
projectId
=
row
.
projectName
this
.
sceneId
=
row
.
name
// 传递参数信息
this
.
queryReportInfo
.
sceneId
=
row
.
id
this
.
queryReportInfo
.
projectId
=
row
.
projectId
getReportList
(
this
.
queryReportInfo
).
then
((
resp
)
=>
{
this
.
reportList
=
resp
.
data
.
data
.
list
this
.
totalNum
=
resp
.
data
.
data
.
total
})
})
},
methods
:
{
// 项目列表
getProjectList
()
{
getProjectList
(
this
.
queryProjectInfo
).
then
((
resp
)
=>
{
this
.
projectList
=
resp
.
data
.
data
.
list
})
},
// 下拉项目改变事件
selectChange
()
{
this
.
getSceneList
()
},
// 获取场景列表
getSceneList
()
{
this
.
querySceneInfo
.
projectId
=
this
.
projectId
getSceneList
(
this
.
querySceneInfo
).
then
((
resp
)
=>
{
this
.
sceneList
=
resp
.
data
.
data
.
list
})
},
// 获取场景报告列表
getReportList
()
{
this
.
queryReportInfo
.
projectId
=
this
.
projectId
this
.
queryReportInfo
.
sceneId
=
this
.
sceneId
this
.
queryReportInfo
.
namespace
=
window
.
sessionStorage
.
getItem
(
'
env
'
)
getReportList
(
this
.
queryReportInfo
).
then
((
resp
)
=>
{
// console.log('返回结果信息', resp)
this
.
reportList
=
resp
.
data
.
data
.
list
this
.
totalNum
=
resp
.
data
.
data
.
total
})
},
// 查询方法
queryData
()
{
this
.
getReportList
()
},
// 报表详情信息
detailReportFrom
(
row
)
{
this
.
$router
.
push
({
path
:
'
ReportDetail
'
})
// bus使用
this
.
$nextTick
(
function
()
{
// DOM 现在更新了
this
.
$bus
.
$emit
(
'
reportDetail
'
,
row
)
})
},
handleSizeChange
(
newSize
)
{
this
.
queryReportInfo
.
pageSize
=
newSize
this
.
getReportList
()
},
handleCurrentChange
(
newPage
)
{
this
.
queryReportInfo
.
pageNum
=
newPage
this
.
getReportList
()
}
}
}
</
script
>
<
style
lang=
"less"
scoped
>
.el-select {
margin: 0 10px 0 5px;
}
</
style
>
src/views/auto/SceneList.vue
View file @
cdc13c25
...
...
@@ -18,6 +18,7 @@
<el-button
type=
"success"
icon=
"el-icon-link"
@
click=
"executeSceneFrom(scope.row)"
>
执行
</el-button>
<el-button
type=
"warning"
icon=
"el-icon-edit"
@
click=
"editeSceneFrom(scope.row)"
>
编辑场景
</el-button>
<el-button
type=
"warning"
icon=
"el-icon-edit"
@
click=
"editeSceneCaseFrom(scope.row)"
>
编辑场景用例
</el-button>
<el-button
type=
"primary"
icon=
"el-icon-circle-check"
@
click=
"checkReport(scope.row)"
>
查看报告
</el-button>
<!--
<el-button
type=
"danger"
icon=
"el-icon-delete"
@
click=
"deleSceneFrom(scope.row)"
>
删除
</el-button>
-->
</slot>
</el-table-column>
...
...
@@ -264,6 +265,15 @@ export default {
// 关闭清空数据
closeAddDialog
()
{
this
.
$refs
.
addSceneFormRef
.
resetFields
()
},
// 查看报告
checkReport
(
row
)
{
this
.
$router
.
push
({
path
:
'
ReportList
'
})
// bus使用
this
.
$nextTick
(
function
()
{
// DOM 现在更新了
this
.
$bus
.
$emit
(
'
reportmsg
'
,
row
)
})
}
}
}
...
...
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