Commit 5822efde authored by 黎博's avatar 黎博

新增冒烟测试

parent 2f4743f0
......@@ -7,9 +7,9 @@ module.exports = merge(prodEnv, {
ENV_CONFIG: '"dev"',
// 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/"'
// HOLMES: '"//holmes-fe.liangkebang.net/"',
QA_API: "//qaapi.liangkebang.com/"
})
......@@ -5,4 +5,5 @@ module.exports = {
QA_PLATFORM: '"//qa-platform.xyqb.com/"',
TESTDATA_API: '"//testdata.liangkebang.com"',
HOLMES: '"//holmes.xyqb.com/"',
QA_API: "//qaapi.liangkebang.com/",
}
\ No newline at end of file
......@@ -46,3 +46,11 @@ export function sendScheduleReport(data) {
data
})
}
export function sendSmokingResult(data) {
return request({
url: '/jira/send/smoking',
method: 'post',
data
})
}
import request from '@/utils/qaapiRequest'
export function getGitlabProject(queryParams) {
return request({
url: '/proconfig/get_project',
method: 'get',
params: queryParams
})
}
export function getGitlabBranch(queryParams) {
return request({
url: '/pipeline/getGitBranch',
method: 'get',
params: queryParams
})
}
import axios from 'axios'
const service = axios.create(
{
baseURL: process.env.QA_API,
timeout: 500000
}
)
// request interceptor
service.interceptors.request.use(
)
// response interceptor
service.interceptors.response.use(
response => response,
error => {
console.log('error' + error) // for debug
return Promise.reject(error)
}
)
export default service
......@@ -643,7 +643,4 @@ export default {
margin-left: 5px;
// margin-top:10px
}
.div-operation {
// margin-top: 6px;
}
</style>
......@@ -14,11 +14,12 @@
<el-table-column prop="creator" label="创建人" width="80px">
</el-table-column>
<el-table-column prop="createTime" label="创建时间" width="180px"></el-table-column>
<el-table-column label="操作" width="300px">
<el-table-column label="操作" width="400px">
<slot slot-scope="scope">
<el-button type="primary" @click="openEditDialog(scope.row)">编辑</el-button>
<el-button type="danger" @click="delProjectRobot(scope.row.id)">删除</el-button>
<el-button type="success" @click="openSendDialog(scope.row)">发送进度</el-button>
<el-button type="primary" size="small" @click="openEditDialog(scope.row)">编辑</el-button>
<el-button type="danger" size="small" @click="delProjectRobot(scope.row.id)">删除</el-button>
<el-button type="warning" size="small" @click="openSendSmokingDialog(scope.row)">冒烟测试</el-button>
<el-button type="success" size="small" @click="openSendDialog(scope.row)">发送进度</el-button>
</slot>
</el-table-column>
<!-- <el-table-column prop="updateTime" label="更新时间"></el-table-column> -->
......@@ -93,6 +94,28 @@
<el-button type="primary" @click="sendSchedule">发 送</el-button>
</span>
</el-dialog>
<!-- 冒烟测试结果对话框 -->
<el-dialog title="发送冒烟测试结果" :visible.sync="smokingDialogVisible" width="60%" @close="closeSmokingDialog">
<el-form ref="smokingFormRef" :rules="smokingFormRules" :model="sendSmokingForm" label-width="150px">
<el-form-item label="冒烟测试结果" prop="result">
<el-select v-model="sendSmokingForm.result" placeholder="请选择冒烟测试结果">
<el-option v-for="item in smokingResult" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="冒烟测试进度" prop="progress">
<el-input v-model="sendSmokingForm.progress" maxlength="3" placeholder="请输入测试进度百分比(不需要%)"></el-input>
</el-form-item>
<el-form-item label="风险点" prop="risk">
<el-input v-model="sendSmokingForm.risk" type="textarea" placeholder="请输入测试风险点(非必填)"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="smokingDialogVisible = false">取 消</el-button>
<el-button type="primary" @click="sendSmoking">发 送</el-button>
</span>
</el-dialog>
</div>
</template>
......@@ -103,7 +126,8 @@ import {
addProjectRobot,
modifyProjectRobot,
delProjectRobot,
sendScheduleReport
sendScheduleReport,
sendSmokingResult
} from '@/api/jira'
export default {
data() {
......@@ -118,6 +142,7 @@ export default {
addDialogVisible: false,
editDialogVisible: false,
sendScheduleDialogVisible: false,
smokingDialogVisible: false,
robotForm: {
projectName: '',
dingUrl: '',
......@@ -126,17 +151,24 @@ export default {
},
editRobotForm: {},
sendProjectRobot: {},
sendScheduleData: {
jiraProject: '',
testProject: '',
progress: '',
risk: '',
webhook: ''
},
// 发送进度报告参数
sendScheduleData: {},
// 发送冒烟结果参数
sendSmokingData: {},
delRobotParams: {
projectRobotId: ''
},
sendScheduleForm: {},
smokingResult: [
{
label: '冒烟通过',
value: true
},
{
label: '测试打回',
value: false
}
],
formRules: {
projectName: [
{ required: true, message: '请输入项目名称', trigger: 'blur' }
......@@ -157,16 +189,28 @@ export default {
trigger: 'blur'
}
]
},
sendSmokingForm: {},
smokingFormRules: {
result: [
{
required: true,
message: '请选择冒烟测试结果',
trigger: 'blur'
}
]
}
}
},
methods: {
// 获取ding_robot列表
getProjectRobotList() {
getProjectRobotList(this.queryInfo).then((resp) => {
this.dingRobotList = resp.data.data.list
this.totalNum = resp.data.data.total
})
},
// 获取jira项目列表
getJiraProjectList() {
getJiraProjectList().then((resp) => {
this.jiraProjectList = resp.data.data
......@@ -256,6 +300,29 @@ export default {
}
})
},
// 发送冒烟测试结果
sendSmoking() {
this.sendSmokingData.jiraProjectKey = this.sendProjectRobot.jiraProjectKey
this.sendSmokingData.testProjectName = this.sendProjectRobot.projectName
this.sendSmokingData.progress = this.sendSmokingForm.progress + '%'
this.sendSmokingData.risk = this.sendSmokingForm.risk
this.sendSmokingData.webhook = this.sendProjectRobot.dingUrl
this.sendSmokingData.result = this.sendSmokingForm.result
this.$refs.smokingFormRef.validate((valid) => {
if (!valid) {
return false
} else {
sendSmokingResult(this.sendSmokingData).then((resp) => {
if (resp.data.data === true) {
this.smokingDialogVisible = false
return this.$message.success('发送成功!')
} else {
return this.$message.error('发送失败!')
}
})
}
})
},
handleSizeChange(newSize) {
this.queryInfo.pageSize = newSize
this.getProjectRobotList()
......@@ -273,6 +340,11 @@ export default {
this.sendScheduleDialogVisible = true
this.sendProjectRobot = projectRobot
},
// 打开发送冒烟测试结果对话框
openSendSmokingDialog(projectRobot) {
this.smokingDialogVisible = true
this.sendProjectRobot = projectRobot
},
closeAddDialog() {
this.$refs.addRobotFormRef.resetFields()
},
......@@ -281,6 +353,9 @@ export default {
},
closeSendDialog() {
this.$refs.sendFormRef.resetFields()
},
closeSmokingDialog() {
this.$refs.smokingFormRef.resetFields()
}
},
created() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment