测试计划关联测试缺陷完善

This commit is contained in:
pfl
2025-05-06 18:51:57 +08:00
parent 7afae71c8a
commit d3cd149ca5
9 changed files with 190 additions and 51 deletions

View File

@@ -2,6 +2,7 @@ import request from '@/utils/request'
const api = {
delRelDefect: 'testPlan/defect/list',
getDefectList: 'testPlan/defect/list',
}
export function delRelDefect(data) {
@@ -11,3 +12,11 @@ export function delRelDefect(data) {
data
})
}
export function getDefectList(data) {
return request({
url: api.getDefectList,
method: 'get',
params: data
})
}

View File

@@ -22,9 +22,10 @@
@click="handleCollapse(!activeNames.includes('1'))"
>高级筛选
</el-button>
<el-button icon="el-icon-plus" type="primary" size="medium" style="margin-left: 10px;" @click="relateCaseVue">
<el-button icon="el-icon-plus" type="primary" size="medium" style="margin-left: 10px;" @click="relateDefect">
关联缺陷
</el-button>
<el-button type="primary" plain icon="el-icon-download" size="medium" :disabled="isExecuteVisible">全部导出</el-button>
<el-button
type="danger"
plain
@@ -81,11 +82,19 @@
<el-Table v-loading="loading" :data="list" @selection-change="handleSelectionChange">
<el-table-column type="selection"/>
<el-table-column prop="caseName" label="ID" align="center"/>
<el-table-column prop="executeResult" label="概要" align="center"/>
<el-table-column prop="createBy" label="状态" align="center"/>
<el-table-column prop="executeBy" label="经办人" align="center"/>
<el-table-column prop="executeTime" label="严重程度" align="center"/>
<el-table-column prop="serialNumber" label="ID" align="center"/>
<el-table-column prop="summary" label="概要" align="center"/>
<el-table-column prop="status" label="状态" align="center">
<template #default="{ row }">
<dict-tag :options="dict.type.bug_status" :value="row.status"/>
</template>
</el-table-column>
<el-table-column prop="manager" label="经办人" align="center"/>
<el-table-column prop="level" label="严重程度" align="center">
<template #default="{ row }">
<dict-tag :options="dict.type.severity_level" :value="row.level"/>
</template>
</el-table-column>
<el-table-column prop="createTime" label="创建时间" align="center"/>
<el-table-column label="操作" align="left" fixed="right">
<template slot-scope="scope">
@@ -105,13 +114,21 @@
/>
<el-dialog title="关联缺陷" :visible.sync="open" width="1000px" v-loading="submitLoading" append-to-body>
<el-table v-loading="relLoading" :data="relList" @selection-change="handleSelectionChange">
<el-table v-loading="relLoading" :data="relList" @selection-change="handleSelectionChange">
<el-table-column type="selection"/>
<el-table-column prop="caseName" label="ID" align="center"/>
<el-table-column prop="executeResult" label="概要" align="center"/>
<el-table-column prop="createBy" label="状态" align="center"/>
<el-table-column prop="executeBy" label="经办人" align="center"/>
<el-table-column prop="executeTime" label="严重程度" align="center"/>
<el-table-column prop="serialNumber" label="ID" align="center"/>
<el-table-column prop="outline" label="概要" align="center"/>
<el-table-column prop="status" label="状态" align="center">
<template #default="{ row }">
<dict-tag :options="dict.type.bug_status" :value="row.status"/>
</template>
</el-table-column>
<el-table-column prop="manager" label="经办人" align="center"/>
<el-table-column prop="level" label="严重程度" align="center">
<template #default="{ row }">
<dict-tag :options="dict.type.severity_level" :value="row.level"/>
</template>
</el-table-column>
<el-table-column prop="createTime" label="创建时间" align="center"/>
</el-table>
<span slot="footer" class="dialog-footer">
@@ -123,17 +140,17 @@
</template>
<script>
import {getPlanCaseList, saveRelate} from "@/api/test/planCase";
import {saveRelate} from "@/api/test/planCase";
import SimpleOptions from "@/components/FormItem/option/SimpleOptions.vue";
import RelateCase from "@/views/test/testplan/execute/relateCase.vue";
import page1 from "../../case/detail/page1.vue";
import {runTestPlanCase} from "../../../../api/test/planCase";
import {delRelDefect} from "@/api/test/planDefect";
import {delRelDefect, getDefectList} from "@/api/test/planDefect";
import {getBugList} from "@/api/test/bug";
export default {
name: 'project',
components: {page1, SimpleOptions, RelateCase},
dicts: ['priority_level', 'project_source', 'project_type', 'status'],
dicts: ['severity_level', 'bug_status'],
props: {
planId: {
type: String,
@@ -168,7 +185,8 @@ export default {
selectedData: [],
managerList: [],
queryParams: {
caseName: '',
serialNumber: '',
outline: '',
planId: '',
type: 0,
pageNum: 1,
@@ -180,7 +198,7 @@ export default {
created() {
this.queryParams.planId = this.planId;
this.title = this.name;
// this.getList();
this.getList();
},
computed: {
placeholderText() {
@@ -206,12 +224,19 @@ export default {
},
// 搜索
handleQuery() {
if (this.select === '1') {
this.queryParams.outline = this.query;
this.queryParams.serialNumber = '';
} else if (this.select === '2') {
this.queryParams.serialNumber = this.query;
this.queryParams.outline = '';
}
this.getList();
},
relateCaseVue() {
relateDefect() {
this.open = true;
this.reset();
this.$refs.relateCase.getList()
this.getRelList()
},
/** 查询列表 */
getList() {
@@ -219,7 +244,7 @@ export default {
const queryParams = {
...this.queryParams
}
getPlanDefectList(queryParams).then(list => {
getDefectList(queryParams).then(list => {
this.list = list.rows;
this.total = list.total;
if (this.total > 0) {
@@ -230,19 +255,12 @@ export default {
this.loading = false
})
},
handleRunAll() {
this.loading = true;
const queryParams = {
planId: this.queryParams.planId,
type: this.queryParams.type
}
this.$modal.confirm('是否确认执行全部接口用例?').then(function () {
return runTestPlanCase(queryParams);
}).then((res) => {
this.$modal.msgSuccess("提交执行成功");
this.open = true;
this.loading = false;
});
getRelList() {
this.relLoading = true
getBugList(this.queryParams).then(list => {
this.relList = list.rows;
this.relLoading = false
})
},
// 表单重置
reset() {