Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MeterSphere
metersphere
提交
ccde2f50
M
metersphere
项目概览
MeterSphere
/
metersphere
上一次同步 大约 3 年
通知
25
Star
1
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
metersphere
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
ccde2f50
编写于
5月 15, 2020
作者:
C
chenjianxing
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
测试用例首页跳转
上级
7364f84d
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
73 addition
and
101 deletion
+73
-101
backend/src/main/java/io/metersphere/base/mapper/ext/ExtTestPlanTestCaseMapper.xml
...metersphere/base/mapper/ext/ExtTestPlanTestCaseMapper.xml
+3
-0
backend/src/main/java/io/metersphere/track/controller/TestPlanTestCaseController.java
...ersphere/track/controller/TestPlanTestCaseController.java
+5
-0
backend/src/main/java/io/metersphere/track/dto/TestPlanCaseDTO.java
...c/main/java/io/metersphere/track/dto/TestPlanCaseDTO.java
+2
-1
backend/src/main/java/io/metersphere/track/service/TestPlanTestCaseService.java
...io/metersphere/track/service/TestPlanTestCaseService.java
+5
-0
frontend/src/business/components/common/router/router.js
frontend/src/business/components/common/router/router.js
+5
-0
frontend/src/business/components/track/home/TrackHome.vue
frontend/src/business/components/track/home/TrackHome.vue
+4
-5
frontend/src/business/components/track/home/components/RecentTestCaseList.vue
...s/components/track/home/components/RecentTestCaseList.vue
+0
-74
frontend/src/business/components/track/home/components/TestCaseSideList.vue
...ess/components/track/home/components/TestCaseSideList.vue
+32
-20
frontend/src/business/components/track/plan/view/TestPlanView.vue
.../src/business/components/track/plan/view/TestPlanView.vue
+17
-1
未找到文件。
backend/src/main/java/io/metersphere/base/mapper/ext/ExtTestPlanTestCaseMapper.xml
浏览文件 @
ccde2f50
...
...
@@ -27,6 +27,9 @@
<if
test=
"request.name != null"
>
and test_case.name like CONCAT('%', #{request.name},'%')
</if>
<if
test=
"request.id != null"
>
and test_case.id = #{request.id}
</if>
<if
test=
"request.nodeIds != null and request.nodeIds.size() > 0"
>
and test_case.node_id in
<foreach
collection=
"request.nodeIds"
item=
"nodeId"
separator=
","
open=
"("
close=
")"
>
...
...
backend/src/main/java/io/metersphere/track/controller/TestPlanTestCaseController.java
浏览文件 @
ccde2f50
...
...
@@ -27,6 +27,11 @@ public class TestPlanTestCaseController {
return
PageUtils
.
setPageInfo
(
page
,
testPlanTestCaseService
.
list
(
request
));
}
@GetMapping
(
"/get/{caseId}"
)
public
TestPlanCaseDTO
getTestPlanCases
(
@PathVariable
String
caseId
){
return
testPlanTestCaseService
.
get
(
caseId
);
}
@PostMapping
(
"recent/{count}"
)
public
List
<
TestPlanCaseDTO
>
getRecentTestCases
(
@PathVariable
int
count
,
@RequestBody
QueryTestPlanCaseRequest
request
){
return
testPlanTestCaseService
.
getRecentTestCases
(
request
,
count
);
...
...
backend/src/main/java/io/metersphere/track/dto/TestPlanCaseDTO.java
浏览文件 @
ccde2f50
...
...
@@ -7,9 +7,10 @@ import lombok.Setter;
@Getter
@Setter
public
class
TestPlanCaseDTO
extends
TestCaseWithBLOBs
{
private
String
executor
;
private
String
executorName
;
private
String
status
;
private
String
results
;
private
String
planId
;
private
String
caseId
;
}
backend/src/main/java/io/metersphere/track/service/TestPlanTestCaseService.java
浏览文件 @
ccde2f50
...
...
@@ -97,4 +97,9 @@ public class TestPlanTestCaseService {
request
.
setExecutor
(
user
.
getId
());
}
public
TestPlanCaseDTO
get
(
String
caseId
)
{
QueryTestPlanCaseRequest
request
=
new
QueryTestPlanCaseRequest
();
request
.
setId
(
caseId
);
return
extTestPlanTestCaseMapper
.
list
(
request
).
get
(
0
);
}
}
frontend/src/business/components/common/router/router.js
浏览文件 @
ccde2f50
...
...
@@ -218,6 +218,11 @@ const router = new VueRouter({
name
:
"
planView
"
,
component
:
TestPlanView
},
{
path
:
"
plan/view/edit/:caseId
"
,
name
:
"
planViewEdit
"
,
component
:
TestPlanView
},
{
path
:
"
project/:type
"
,
name
:
"
trackProject
"
,
...
...
frontend/src/business/components/track/home/TrackHome.vue
浏览文件 @
ccde2f50
...
...
@@ -8,10 +8,10 @@
<el-col
:span=
"9"
>
<el-row>
<el-col>
<
recent-test-case-list
/>
<
test-case-side-list
:title=
"'最近测试'"
:type=
"'recent'"
/>
</el-col>
<el-col>
<
pending-test-case-list
/>
<
test-case-side-list
:title=
"'待完成'"
:type=
"'pending'"
/>
</el-col>
</el-row>
</el-col>
...
...
@@ -21,12 +21,11 @@
</
template
>
<
script
>
import
PendingTestCaseList
from
"
./components/PendingTestCaseList
"
;
import
RecentTestCaseList
from
"
./components/RecentTestCaseList
"
;
import
RelatedTestPlanList
from
"
./components/RelatedTestPlanList
"
;
import
TestCaseSideList
from
"
./components/TestCaseSideList
"
;
export
default
{
name
:
"
TrackHome
"
,
components
:
{
RelatedTestPlanList
,
RecentTestCaseList
,
PendingTestCase
List
}
components
:
{
TestCaseSideList
,
RelatedTestPlan
List
}
}
</
script
>
...
...
frontend/src/business/components/track/home/components/RecentTestCaseList.vue
已删除
100644 → 0
浏览文件 @
7364f84d
<
template
>
<home-base-component
:title=
"'最近测试'"
>
<el-table
row-key=
"id"
:data=
"tableData"
>
<el-table-column
prop=
"name"
:label=
"$t('commons.name')"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop=
"priority"
:label=
"$t('test_track.case.priority')"
>
<template
v-slot:default=
"scope"
>
<priority-table-item
:value=
"scope.row.priority"
ref=
"priority"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"type"
:label=
"$t('test_track.case.type')"
show-overflow-tooltip
>
<
template
v-slot:default=
"scope"
>
<type-table-item
:value=
"scope.row.type"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"status"
:label=
"$t('test_track.plan_view.execute_result')"
>
<
template
v-slot:default=
"scope"
>
<status-table-item
:value=
"scope.row.status"
/>
</
template
>
</el-table-column>
</el-table>
</home-base-component>
</template>
<
script
>
import
HomeBaseComponent
from
"
./HomeBaseComponent
"
;
import
StatusTableItem
from
"
../../common/tableItems/planview/StatusTableItem
"
;
import
TypeTableItem
from
"
../../common/tableItems/planview/TypeTableItem
"
;
import
PriorityTableItem
from
"
../../common/tableItems/planview/PriorityTableItem
"
;
export
default
{
name
:
"
RecentTestCaseList
"
,
components
:
{
PriorityTableItem
,
TypeTableItem
,
StatusTableItem
,
HomeBaseComponent
},
data
()
{
return
{
tableData
:
[]
}
},
mounted
()
{
this
.
initTableData
();
},
methods
:
{
initTableData
()
{
this
.
result
=
this
.
$post
(
'
/test/plan/case/recent/5
'
,
{},
response
=>
{
this
.
tableData
=
response
.
data
;
});
},
}
}
</
script
>
<
style
scoped
>
</
style
>
frontend/src/business/components/track/home/components/
PendingTestCas
eList.vue
→
frontend/src/business/components/track/home/components/
TestCaseSid
eList.vue
浏览文件 @
ccde2f50
<
template
>
<home-base-component
:title=
"
'待测试'
"
>
<home-base-component
:title=
"
title
"
>
<el-table
row-key=
"id"
@
row-click=
"editTestCase"
:data=
"tableData"
>
<el-table-column
...
...
@@ -44,29 +45,40 @@
</template>
<
script
>
import
HomeBaseComponent
from
"
./HomeBaseComponent
"
;
import
PriorityTableItem
from
"
../../common/tableItems/planview/PriorityTableItem
"
;
import
TypeTableItem
from
"
../../common/tableItems/planview/TypeTableItem
"
;
import
StatusTableItem
from
"
../../common/tableItems/planview/StatusTableItem
"
;
export
default
{
name
:
"
PendingTestCaseList
"
,
components
:
{
StatusTableItem
,
TypeTableItem
,
PriorityTableItem
,
HomeBaseComponent
},
data
()
{
return
{
tableData
:
[]
}
import
HomeBaseComponent
from
"
./HomeBaseComponent
"
;
import
StatusTableItem
from
"
../../common/tableItems/planview/StatusTableItem
"
;
import
TypeTableItem
from
"
../../common/tableItems/planview/TypeTableItem
"
;
import
PriorityTableItem
from
"
../../common/tableItems/planview/PriorityTableItem
"
;
export
default
{
name
:
"
TestCaseSideList
"
,
components
:
{
PriorityTableItem
,
TypeTableItem
,
StatusTableItem
,
HomeBaseComponent
},
data
()
{
return
{
tableData
:
[],
}
},
props
:
{
type
:
{
type
:
String
},
title
:
{
type
:
String
},
mounted
()
{
this
.
initTableData
();
},
mounted
()
{
this
.
initTableData
();
},
methods
:
{
initTableData
()
{
this
.
result
=
this
.
$post
(
'
/test/plan/case/
'
+
this
.
type
+
'
/5
'
,
{},
response
=>
{
this
.
tableData
=
response
.
data
;
});
},
methods
:
{
initTableData
()
{
this
.
result
=
this
.
$post
(
'
/test/plan/case/pending/5
'
,
{},
response
=>
{
this
.
tableData
=
response
.
data
;
});
},
editTestCase
(
row
,
event
,
column
)
{
this
.
$router
.
push
(
'
/track/plan/view/edit/
'
+
row
.
caseId
)
}
}
}
</
script
>
<
style
scoped
>
...
...
frontend/src/business/components/track/plan/view/TestPlanView.vue
浏览文件 @
ccde2f50
...
...
@@ -24,7 +24,7 @@
:plan-id=
"planId"
:select-node-ids=
"selectNodeIds"
:select-parent-nodes=
"selectParentNodes"
ref=
"test
CasePlan
List"
/>
ref=
"test
PlanTestCase
List"
/>
</el-main>
</el-container>
...
...
@@ -63,8 +63,12 @@
},
mounted
()
{
this
.
initData
();
this
.
openTestCaseEdit
(
this
.
$route
.
path
);
},
watch
:
{
'
$route
'
(
to
,
from
)
{
this
.
openTestCaseEdit
(
to
.
path
);
},
planId
()
{
this
.
initData
();
}
...
...
@@ -106,6 +110,18 @@
this
.
treeNodes
=
response
.
data
;
});
}
},
openTestCaseEdit
(
path
)
{
if
(
path
.
indexOf
(
"
/plan/view/edit
"
)
>=
0
){
let
caseId
=
this
.
$route
.
params
.
caseId
;
this
.
$get
(
'
/test/plan/case/get/
'
+
caseId
,
response
=>
{
let
testCase
=
response
.
data
;
if
(
testCase
)
{
this
.
$refs
.
testPlanTestCaseList
.
handleEdit
(
testCase
);
this
.
$router
.
push
(
'
/track/plan/view/
'
+
testCase
.
planId
);
}
});
}
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录