测试平台(二)后端开发(5)实现构建记录相关功能

本文介绍了使用Flask和Python进行后端开发时,如何实现构建记录相关功能,包括controller、service、dao层的代码实现,并详细讲述了测试用例的生成、API接口的校验以及Jenkins的接入与调用验证。
摘要由CSDN通过智能技术生成

前言

本章主要讲述【构建记录】相关功能

之前说过,整个需求的流程是:
--> 当我前端在勾选测试用例后,然后会点击生成计划
这会不仅会将测试计划和测试用例同步关联上,还会同步生成一条构建记录,
且自动调用jenkins,并拿到测试报告链接

那这个操作的话,我们应当在保存测试计划的时候去实现,而上一篇【测试计划】功能的实现,
我们只将【测试计划】和【测试用例】关联起来了,但未生成【构建记录】,也没接入jenkins

那本章的话,我们需要实现的功能:
--> 1、生成【测试计划】的时候,同步生成一条【构建记录】
--> 2、能自动调用jenkins,生成测试报告,并返回给我们
--> 3、根据【测试计划id】,查询当前计划所有的【构建记录】 

如果看得比较模糊的话,建议回顾一下我之前写的需求介绍篇,里面附有前端原型图,我写的比较详细了


环境

  • flask
  • python3.6
  • mysql5.7


一、构建记录功能具体代码实现

  • 这代码实现就和之前一样,比较简单,直接贴代码了

1、controller层/build_controller.py

在这里插入图片描述

"""
    构建记录控制层
"""
from flask import request
from flask_restx import Namespace, Resource

from app import api
from do import BuildEntity
from service.build_service import BuildService
from utils.log_utils import logger

build_ns = Namespace("build", description="构建记录管理")
build_service = BuildService()


@build_ns.route("")
class BuildController(Resource):
    get_paresr = api.parser()
    # 查看的是某个测试计划的构建记录
    get_paresr.add_argument("plan_id", type=int, location="args")

    @build_ns.expect(get_paresr)
    def get(self):
        """
        根据测试计划id查询构建记录(单个/所有)
        :return:
        """
        # 把对象转换成python的字典格式。
        plan_id = request.args.get("plan_id")
        logger.info(f"获取构建记录通过测试计划ID<===== {
     plan_id}")
        if plan_id:
            build_res = build_service.get_list_by_plan_id(plan_id)
            res = [build.as_dict() for build in build_res]
            return {
   "code": 0, "msg": {
   "data": res}}
        else:
            return {
   "code": 40005, "msg": "plan_id is not exist"}

    post_paresr = api.parser
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

M1kasal

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值