1、背景

某天在群里讨论在测试平台上集成压测的方案

image.png

我就突发奇想,要不在我的接口平台也加上执行 Jmeter 的功能?

2、流程图

说干就干,先稍微捋一下流程图

image.png

image.png

整体上没啥问题,还是那句老话,先完成再完美
能跑通了再说

3、设计分析

3.1 整体分析

通过流程图,可以分出来,需要至少这些功能:

把这些再细化一下,直接交给 ChatGPT

设计分析-Django.png

可以看到,ChatGPT 给出来的答案并不能满足需求,我还没验证具体功能,至少一看就知道少了执行 jmx 的接口

3.2 执行 jmx

接着问 ChatGPT

追问执行jmx.png

3.3 修复 Dockerfile

执行接口看着没问题了,Dockerfile 似乎有问题,缺少了 Java 环境

缺少Java环境.png

3.4 切换成 FastAPI

很好,似乎都 OK 了?
好像 Django 创建项目还是有点啰嗦,换成 FastAPI 试试?

换成FastAPI.png

4、调试

一切就绪,开始调试

报错了

这里 ChatGPT 瞎说的,后面自己看日志排查,是容器里面 Jmeter 都没有安装好
Dockerfile 里面给出来的 5.4.1 版本是没有的,直接换成 5.5 版本就 OK 啦

查看报告呢?
截图没有了,因为 ChatGPT Plus 账号过期,现在连历史会话都加载不出来,号都直接废了

5、发布

ChatGPT 已经把核心的功能都写得差不多了,我再做亿点点的修改,就能把项目发布啦

初版的源码

https://github.com/lihuacai168/Jmeter-Toolkit/releases/tag/V0.1.0

最新源码

https://github.com/lihuacai168/Jmeter-Toolkit

6、总结

原文


↙↙↙阅读原文可查看相关链接,并与作者交流