分享httprunner 结合django实现平台接口自动化方案

说明,可以直接在某个视图集定义自定义接口来验证。

调试1:前端界面直接编写yaml文件.

  • 新增要实现存数据到mysql,同时存文件到testcase下, 如test.yaml
  • 更新yaml数据,同时做到更新 testcase下的文件,如test.yaml
python 复制代码
  @action(methods=['GET'], detail=True, url_path='mkfile')
    def mkfile_case(self,req,pk):
        # student = self.get_object()
        yaml_file = 'key: value\nlist:\n  - item1\n  - item2'
        yaml_name = 'test.yaml'
        yaml_path = os.path.join('testcase', yaml_name)

        with open(yaml_path, 'w') as f:
            f.write(yaml_file)

        return ResponseList(msg="make success")

调试2 :后端实现单用例的执行

python 复制代码
    @action(methods=["get"],detail=True)
    def run_case(self,request,pk):
        # student2 = Student.objects.get(pk=pk)

        # 这个写法同上
        student = self.get_object()

        path =f"testcase/{student.desc}"

        # 2.调用hr4的api,来执行我们的json文件
        # print(path)
        exit_code = main_run([path])

        # 3.返回执行结果
        if exit_code != 0:
            return ResponseError(msg="failed run case")

        # 4.返回执行结果
        return ResponseList(msg="run success")

调试3:后端实现多个用例的执行,并生成报告

后端:

前端:

一个测试计划可以选多个测试用例,然后点击执行,就运行多个测试用例

在测试报告菜单中,可以展示每个测试计划执行后的测试结果。

相关推荐
charlie1145141919 分钟前
嵌入式Linux驱动开发pinctrl篇(1)——从寄存器到子系统:驱动演进之路
linux·运维·驱动开发
Agent手记16 分钟前
异常考勤智能预警与处理与流程优化方案 | 基于企业级Agent的超自动化实战教程
运维·人工智能·ai·自动化
cen__y41 分钟前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git
dapeng-大鹏3 小时前
KVM+LVM 零停机在线扩容 Ubuntu 根分区:从磁盘添加到逻辑卷扩展完整
linux·运维·ubuntu·磁盘空间扩展
乐维_lwops3 小时前
案例解读|运维监控助力某大型卷烟厂构建高效运维监控体系
运维·运维案例
JiaWen技术圈3 小时前
网站用户注册行为验证码方案
运维·安全
不会武功的火柴3 小时前
SystemVerilog语法(8)-有限状态机(FSM)
嵌入式硬件·fpga开发·自动化·ic验证·rtl·uvm方法学
仙柒4153 小时前
Docker存储原理
运维·docker·容器
DolphinDB3 小时前
漫长人工,耗费存储?用 BackupRestore 模块一站式解决跨环境数据同步难题
运维·后端·架构
神奇椰子6 小时前
[特殊字符] 服务器搭建网站完整教程
运维·服务器