项目:

介绍:

项目是用golang 实现,引用vegeta 的lib来实现压力测试,其实vegeta部分已经实现的功能比较完善了,但是上手还是有点难度的,在实际使用中,包装一层,这样使用起来比较简单,对有这方面的需求但是不想花太多精力,可以考虑。

项目内容

1. 结构

--conf

--conf.yml

--loadConf.go

--lib

--stressGet.go

--stressPost.go

--Dockerfile

--main.go

--docker-compose.yml

--README.md

--------------------------------------------------------------------------

main.go: 入口

conf: 配置项(压力测试需要的一些参数)

lib:压力测试的两个主要的方法GET 和POST

2. 参数说明

host: localhost //项目访问的host

port: 8012 //项目访问的端口

times: 4 //压力测试持续请求时间

rate: 4 //每秒请求量

resultPath: D:/SelfStudy/GoProject/data/ //结果保存路径

testResulName: testing //压力测试结果保存文件名

requestType: get //当前压力测试类型,目前只支持(GET ,POST)

requestPath: / //压力测试的对象

requestData: message=hello world!! //需要传输的data

3. 启动方式

a. go run

此种方式比较依赖环境,所以必须先把环境搭建好,然后才可以测试。

b. docker(推荐)

Docker 方式比较简单,对环境的依赖比较小,只需装一个docker,然后即可。测试的时候只需要更改配置文件即可进行测试。

4. 测试结果

与时间相关部分单位为NS(纳秒),与大小相关的单位是B(字节)

有疑问加站长微信联系(非本文作者)