接口测试 react+unittest+flask 接口自动化测试平台

目录

[1 前言](#1 前言)

[2 框架](#2 框架)

[2-1 框架简介](#2-1 框架简介)

[2-2 框架介绍](#2-2 框架介绍)

[2-3 框架结构](#2-3 框架结构)

[3 平台](#3 平台)

[3-1 平台组件图](#3-1 平台组件图)

[1 新建用例](#1 新建用例)

[2 生成测试任务](#2 生成测试任务)

[3 执行并查看测试报告](#3 执行并查看测试报告)

[3-2 用例管理](#3-2 用例管理)

[3-2-1 用例设计](#3-2-1 用例设计)

[3-3 任务管理](#3-3 任务管理)

[3-3-1 创建任务](#3-3-1 创建任务)

[3-3-2 执行任务](#3-3-2 执行任务)

[3-3-3 测试报告](#3-3-3 测试报告)

[3-3-4 邮件通知](#3-3-4 邮件通知)


1 前言

构建一个基于React、Unittest和Flask的接口自动化测试平台是一个很好的选择。React是一个流行的JavaScript库,用于构建用户界面,而Unittest是Python的一个单元测试框架,用于编写和执行测试用例。Flask是一个轻量级的Python Web框架,可以用于构建接口。

接口自动化测试的工具很多,比如 soapUI,postman,jmeter 等等,但是这些通用的工具的可扩展性以及跟项目的契合度上并不是十分合适。

单有框架,还不足以让接口自动化更简化,自动化测试需要大量编码维护工作,为了改善这些问题,解放重复的劳动力,所以将其做成平台型的,可以让不懂技术的人都能使用,同时也让接口用例更加简单明了,易维护。

简单示范下使用流程。

2 框架

2-1 框架简介

前端 reactjs 语言实现,后台由 flask 提供 restful 接口,基于 python unittest 测试框架,一键生成测试脚本,可视化的维护测试数据。

2-2 框架介绍

1-基于 Python+unittest 测试框架

2-二次封装了 urlib 库,对于 cookie 及存在业务流程依赖的数据,做了保存处理,可连贯测试业务流程及不同的请求场景。

3-支持多项目、不同环境数据参数的扩展。

4-支持返回值的 code、指定字段校验,提升测试准确性。

5-定时任务、即时任务执行,满足稳定接口自动化业务测试及临时接口的调试测试。

6-在线报告展示以及 Email 自动发送报告

2-3 框架结构

结构图:

分为前后台两套代码:

3 平台

3-1 平台组件图

1 新建用例

2 生成测试任务

3 执行并查看测试报告

3-2 用例管理

在线编写自动化测试,让大家都能够参与测试

自动化用例编辑可视化,使自动化过程更加简单明了

针对需要连续流程获取的参数值,提供 json 类型的数据解析,获取指定的值。

3-2-1 用例设计

平台用例执行流程图

3-3 任务管理

3-3-1 创建任务

根据测试用例,生成指定域名或测试机器 ip 的测试任务。

3-3-2 执行任务

定时任务是在每日的指定时间点自动执行指定的测试任务集。

每次执行(包括手动执行和定时任务)之后,都会生成一份测试报告,发送给指定人。

3-3-3 测试报告

可按测试时间及给定文件名,生成对应时间的 html 可视化报告,报告内容包含测试耗时,测试执行用例总数,执行成功、失败、出错用例数统计;还有单个用例的执行情况 (ID,用例名称,服务端返回值,运行结果等)

3-3-4 邮件通知

暂时发送人和接收人是写在代码里的,看需求再看是否需要做成前端配置,邮件会直接显示报告结果,也可以查看附件详细内容。

作为一位过来人也是希望大家少走一些弯路

在这里我给大家分享一些自动化测试前进之路的必须品,希望能对你带来帮助。

(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等)

相信能使你更好的进步!

点击下方小卡片

相关推荐
IT成长日记2 分钟前
【Docker基础】Docker数据卷管理:docker volume inspect及其参数详解
运维·docker·容器·volume·inspect
伤不起bb12 分钟前
Kubernetes 服务发布基础
云原生·容器·kubernetes
ladymorgana16 分钟前
【Docker】如何设置 `wiredTigerCacheSizeGB` 和 `resources.limits.memory`
运维·docker·容器
生如夏花℡21 分钟前
HarmonyOS学习记录3
学习·ubuntu·harmonyos
mcdx23 分钟前
基于Docker构建OrangePi5 SDK环境
docker·容器
伍哥的传说24 分钟前
鸿蒙系统(HarmonyOS)应用开发之手势锁屏密码锁(PatternLock)
前端·华为·前端框架·harmonyos·鸿蒙
之歆24 分钟前
Python-封装和解构-set及操作-字典及操作-解析式生成器-内建函数迭代器-学习笔记
笔记·python·学习
yugi98783825 分钟前
前端跨域问题解决Access to XMLHttpRequest at xxx from has been blocked by CORS policy
前端
幽络源小助理30 分钟前
SpringBoot基于JavaWeb的城乡居民基本医疗信息管理系统
java·spring boot·学习
浪裡遊37 分钟前
Sass详解:功能特性、常用方法与最佳实践
开发语言·前端·javascript·css·vue.js·rust·sass