性能测试——jmeter环境搭建,录制脚本,jmeter参数化CSV
一、Jmeter+jdk环境搭建
1.http://www.oracle.com/technetwork/java/javase/downloads/index.html,下载jdk。
直接安装就行了,然后cmd,输入java -version,就会出来你所安装的版本号。不用设置环境变量就好。
2.http://jmeter.apache.org/download_jmeter.cgi,下载jmeter
解压安装,待安装完成之后然后找到apache-jmeter-3.2\bin的
,双击即可打开。界面大概就长这样吧。
界面介绍啥的我就不多废话,要知道各自什么意思百度去吧,好多博客都有,反正我也记不住(捂脸)。
二、jmeter脚本录制
直接甩链接:(超级详细的经验,值得分享)
https://jingyan.baidu.com/article/5d368d1ef548d43f61c05761.html
三、jmeter参数化CSV(CSV Data Set Config )(看网上有好几种方法,貌似这个简单点?所以就先看的这个,有点囫囵吞枣,还是先记录下来,慢慢学习积淀补充,所以,一定会有后续(flag))
依葫芦画瓢了一个,看了还几个博客,觉得有些步骤不清楚,所以看的时候蒙得很,还是自己实践一遍了放在这里,供自己学习查阅。(步骤详细得很)
1、添加线程组
2、右击线程组,添加->Sampler->http请求,添加http请求
服务器名称或IP:weather.com.cn
协议为: http 方法为:GET
路径为: /weather/${citycode}.shtml 其中${citycode}是引用CSV Data中citycode
3、新建一个文本文档weather.txt,我是放在d盘下面的,也就是第四步的时候filename的位置。
101210101,杭州
101210111,江干
101210102,萧山
101210114,滨江
101210113,西湖
4、添加CSV Data Set Config
说明:
Filename:需要读取的文件的位置
File encoding:编码格式,utf-8
Variable Names(comma-delimited):参数名称(如:有几列参数,在这里面就写几个参数名称,每个名称中间用分隔符分割,分隔符在下面的“Delimiter”中定义,为了和文件中的“,”对应,这里也用“,”分割每个参数名,引用方法:${username},${password}
Delimitet:定义分隔符,这里定义某个分隔符,则在“Variable Names”用这里定义的分隔符分割参数。
Allow quoted data:默认false
Recycle on EOF:到了文件尾是否循环,True---继续从文件第一行开始读取,False---不再循环
Stop thread on EOF:到了文件尾是否停止线程,True---停止,False---不停止,注:当Recycle on EOF设置为True时,此项设置无效。
Sharing mode:共享模式,All threads---所有线程,Current thread group—当前线程组,Current thread—当前线程。这个地方和LoadRunner中的迭代取之相反,经试验得出来的结果是:
All threads:测试计划中所有线程,假如说有线程1到线程n (n>1),线程1取了一次值后,线程2取值时,取到的是csv文件中的下一行,即与线程1取的不是同一行。
Current thread group:当前线程组,假设有线程组A、线程组B,A组内有线程A1到线程An,线程组B内有线程B1到线程Bn。取之情况是:线程A1取到了第1行,线程A2取第2行,现在B1取第1行,线程B2取第2行。
Current thread:当前线程。假设测试计划内有线程1到线程n (n>1),则线程1取了第1行,线程2也取第1行。
四、添加查看结果数
五、执行前别忘记了这里
线程组里面的线程属性那里,循环次数改为5。因为我们总共有5个http请求吧(我是这么理解的)
开始执行
点绿色的三角形
然后点击查看结果树,你就会看到
西湖啊,滨江啊这些数据就有了,可以了。正好下班,吃饭去了。欢迎批评指正