这是一个基于Python3+Locust+Vue3的性能测试平台,通过Postgresql+Grafana做监控大盘,追求简单化执行性能测试,平台化集成脚本管理、场景配置、压力配置、任务管理、监控报警等
(开发中)
- 简单
- 平台化
- 易扩展
🎉️ 目前正在逐步更新,欢迎提Issues,有任何问题欢迎随时联系
前端:vue3+element-ui
后端:python django
中间件: mysql
性能测试引擎:locust,locust-plugins
监控系统:Grafana+postgressql(timescale)
1.部署Grafana+postgressql,推荐使用docker部署,项目下有docker-compose.yml文件,可参考部署
2.建好数据库/assets/timescale_schema.sql有脚本
3.部署Grafana,导入好监控指标
参考:locust_plugins https://github.com/SvenskaSpel/locust-plugins/tree/master/locust_plugins/dashboards
# 进入前端项目目录
cd ui-colo
# 安装前端依赖
npm install
# 运行前端服务
npm run dev
# 打包预发布环境
npm build:stage
# 打包正式环境
npm build:prod
# 安装依赖
pip install -r requirements.txt
# 建colo需要的库表
##安装一个mysql库,具体用户名等信息在setting.py配置
# 运行一下2个命令,生成所需的表
python manage.py makemigrations api
python manage.py migrate
# 运行后端服务
python3 manage.py runserver 0.0.0.0:8000
开始压测后,会在这里生成一个记录,可以停止和打开监控大盘
生成唯一的testplan,交给grafana来聚合,展示
locust --timescale --headless --override-plan-name 0108 --pghost=<machineip> --pgport=5432 --pgpassword=password --pguser=postgres
#运行locust 输出到postgressql
- 脚本上传管理 / git保存
- 测试计划-分布式/单机运行模式
- [ ]