项目中需要使用一个性能测试工具对开发的服务进行性能评估,调研后选择了JMeter,并进行了初步的学习和使用。
1. 工具获取。
jmeter基于Java,并隶属于Apache,下载地址:http://jmeter.apache.org/download_jmeter.cgi,当前的最新版本是2.12
2. windows GUI版本试用。
windows环境需要安装Java,运行bin下的jmeter.bat即可触发GUI环境。
可以新建一个HTTP的测试模板。
可以配置压力属性,如下图,其中:
线程数:并发用户数
Ramp-Up Period:几秒钟内启动所有线程
循环次数:并发请求的loop测试次数
其他地方还有配置host和path、端口等,不赘述。
压力测试中数据随机的一点小方法:
自己先用脚本生成一个随机数的csv文件;
jmeter使用一个配置处理原件“csv data set config”;
body数据中使用{}将变量标示。
然后就能用了。
2. Linux命令行使用jmeter。
bin下的jmeter.properties文件里可以配置哪些字段记录在jtl结果日志中,用户可以配置。
*.jmx文件是测试配置文件,测试信息都在里面。
*.jtl是测试返回结果的记录日志文件,用户可以在里面查看到返回详情。
运行命令样例:
./bin/jmeter -n -t./bin/templates/tipTesting.10.jmx -l tip.10.jtl
还可以对结果进行二次格式化处理形成更友好的报表,样例:
xsltproc./extras/jmeter-results-report_21.xsl tip.10.jtl > tip.10.html
运行日志怎么看?举个栗子:
上图是一个做了60000次测试请求的样例。
summary + 表示增量,summary = 表示当前累加总值。