Skip to content

优化和拓展 #2

@qtracer

Description

@qtracer

TestDeploy v2.X优化

1、性能测试支持参数输入实现环境和数据源切换 > 已完成,需要通过配置约定好切换环境的Python文件名称,同时兜底不存在这样的文件则忽略切换_
2、locust支持多机master-worker模式下针对特定tag压测(目前只有单机模式支持) >无需优化,多机模式下只针对全用例场景
3、支持从Nexus镜像私有仓库拉取镜像(优势:基础镜像单独在私库维护,实现多机共享;劣势:从私库拉不能利用本地镜像cache,对网络带宽要求高) > 已完成,如果本地有远程仓库指定的镜像版本,则用本地的。
4、支持locust --headless模式,--html自动保存报告和邮件发送 >延缓
5、locust日志级别可配置化(默认WARNING及以上,避免INFO级别log大量写入影响施压机I/O性能) >无需优化,代码层面实现,即改写的GET/POST请求的公共方法中
6、邮件正文美化(考虑转图片格式) >延缓
7、locust多机master-worker模式下,压测日志收集 >延缓
8、locust报告优化 >已完成
(1)对响应时间95%、99% 超过配置阈值的接口在数量方面统计提醒
(2)汇总信息:RPS、Error/s、target Host
9、屏蔽跨机打包时代码文件在控制台显示(静默模式) >已完成
10、httprunner和locust的时间都是GMT时区,故统一格式:具体时间+00:00 >已完成
11、用SSH 免密登录+rsync改写文件跨主机传输方式,提升传输效率 >待处理

短时间难以解决的不足

只考虑单管理节点,Locust Web只开放默认8089端口,同时为保证master节点性能不成为瓶颈,目前仅支持同时间段内单个项目压测(除非不同压测项目选择不同的master节点)。
临时优化:设置变量和定时监测任务,若进行中,则另一个项目启动时强制终止并提示。 >无需优化,端口被占用,无法启动新的locust进程服务

TestDeploy v3.0构想

基于Docker Swarm(或k8s)管理测试集群(支持多管理节点),尝试支持UI自动化测试

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions