kakawaa / ExileTestPlatformServer

放逐测试平台V5.0(服务端)(Python)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ExileTestPlatformServer

放逐测试平台

前言

主作者 YangYueXiong 是某测试平台V1.0与V2.0的设计者,期间充当产品,设计,研发,测试,运维等多个角色。

期间因各种因素导致最后测试平台落地的结果并不理想,但在整个过程中其受益匪浅并有所总结,而组织者 ExileLine 希望做出一个能让测试人员认可并真正能降本增效的测试平台,其言既然不能于公司中很好实践,那么就流放到整个社区,让更多的测试人员使用并提出建议使其更好发挥实际作用,因此取名放逐

组织者 ExileLine 希望后续能以组织的形式重构它,使它能够商业定制化,如果你感兴趣,点亮Star,(最下方)请联系我们。

Respect ! ! !

历程

  • 2020-7-18:某某测试平台V1.0(某思维)
  • 2020-9-18:某某测试平台V2.0(某思维,某某测试平台V1.0重构)
  • 2021-7-20:放逐测试平台V3.0(个人开源,因开发如下V4.0,仓库关闭)
  • 2022-2-23:某某测试平台V4.0(基于放逐测试平台V3.0扩展为某公司定制化开发)
  • 2023-7-18:放逐测试平台V5.0(组织开源)

项目介绍

ExileTestPlatform项目主要基于测试人员对测试用例配置环境,参数,变量,响应断言规则,数据库断言规则后,生成一套具备数据驱动的测试规则,实施接口,UI测试的持续测试平台。

  • 当前主要使用Python 作为主要后端语言,因其丰富的三方扩展库以及对数据的处理方便而选择,开源:ExileTestPlatServer-Python
  • 对于使用NodeJs而言,前后端都基于Js 并在webUI自动化与浏览器操作中能起到很好效果,未开源:ExileTestPlatServer-Node
  • 对于使用Golang而言,没有对Selenium很好的支持而且没有类似Celery 的成熟的异步任务框架,未开源:ExileTestPlatServer-Go
  • 对于使用Java而言,各方面都很好,但主作者 YangYueXiong 比较抗拒,未开源:ExileTestPlatServer-Java

项目演示

  • 封面 登录页

  • 主页
    仪表盘

  • Api用例 接口用例列表 接口测试1 接口测试2

  • UI用例 UI用例列表

  • UI用例(简单业务) UI测试简单业务流程

  • UI用例(复杂业务) UI测试复杂业务流程

  • 项目演示地址:http://106.75.174.40 (点击:获取游客账号 即可)

  • 警告:切勿在演示地址平台中使用重要或私密数据进行操作,损失概不负责,谢谢!

项目地址


  • 前端项目地址(码云):待补充
  • 后端项目地址(码云):待补充

操作手册

系统架构图

  • 无法查看图片可以前往码云:待补充

系统逻辑架构图

业务流程图

业务流程图

数据库表设计

后端技术

  • 当前使用的是Python相关技术栈,后续新增NodeJsGolangJava等语言相关技术栈实现相同的功能,尽可以满足不同语言的开发人员进行二次开发
技术 说明 官网
Flask2.0 同步非阻塞MVC框架(2.0.2版本加入async异步) https://flask.palletsprojects.com
Flask_BestPractices Flask最佳实践(该项目使用的项目结构) https://github.com/yangyuexiong/Flask_BestPractices https://gitee.com/yangyuexiong/Flask_BestPractices
Flask-SQLAlchemy ORM http://www.pythondoc.com/flask-sqlalchemy/quickstart.html
Flask-Migrate Alembic处理Flask应用程序的SQLAlchemy数据库迁移 https://flask-migrate.readthedocs.io/en/latest
Flask-CORS 用于处理跨源资源共享(CORS)的Flask扩展,使跨源AJAX https://flask-cors.corydolphin.com/en/latest
PyMySQL 纯Python MySQL客户端库。PyMySQL的目标是成为MySQLdb的替代品,并在CPython、PyPy、IronPython和Jython上工作 https://pymysql.readthedocs.io/en/latest
DBUtils DBUtils是一套工具,可提供与数据库的可靠、持久和池连接,可用于各种多线程环境 https://webwareforpython.github.io/DBUtils/main.html
Requests Python HTTP库 https://requests.readthedocs.io/en/latest
Aiohttp Python 异步HTTP客户端/服务器 https://docs.aiohttp.org
loguru 美化Python日志记录 https://loguru.readthedocs.io/en/stable/index.html
Celery5.2 异步任务 https://docs.celeryq.dev/en/stable
Flask-APScheduler 定时任务 https://viniciuschiele.github.io/flask-apscheduler
Selenium4.0.x 自动化网络浏览器的工具套件 https://www.selenium.dev/zh-cn/
Redis 缓存 https://redis.io
MySQl 关系型数据库 https://www.mysql.com

前端技术

技术 说明 官网
Vite 构建工具 https://vitejs.cn
Vue3 前端框架 https://vuejs.org
Vue-router 路由框架 https://router.vuejs.org
Vuex 全局状态管理框架 https://vuex.vuejs.org
Axios 前端HTTP框架 https://github.com/axios/axios
TDesign 腾讯前端UI框架 https://tdesign.tencent.com
Echarts Echarts开源可视化图表库 https://echarts.apache.org
CodeMirror Microsoft开源在线代码编辑器 https://codemirror.net
Js-cookie cookie管理工具 https://github.com/js-cookie/js-cookie

接口清单

项目部署

联系我们

  • 文档可能存在不清晰的地方,若有疑问可通过issues或以下方式联系我们。
    • 邮箱:exileplat@gmail.com or yang6333yyx@126.com
    • Wechat:YYx_33
    • QQ:417993207

致谢

  • GATING :感谢核心开发者 GATING
  • yugijiudai :感谢核心开发者 yugijiudai
  • miterwan :感谢核心开发者 miterwan
  • YangYueXiong :感谢核心开发者 YangYueXiong
  • Flask_BestPractices :感谢 YangYueXiong 提供的 Flask最佳实践 作为项目结构
  • TDesign :感谢 腾讯TDesign 提供的优秀组件库
  • honghuangdc :感谢 honghuangdc 提供的开源 soybean 作为页面参考

About

放逐测试平台V5.0(服务端)(Python)

License:Mozilla Public License 2.0


Languages

Language:Python 95.5%Language:HTML 4.3%Language:Dockerfile 0.1%Language:Shell 0.1%