原文链接:http://blog.chinaunix.net/uid-26884465-id-3416869.html
一 前期准备
首先,你要去官方那里下载Jmeter的压缩包,官方地址是http://jmeter.apache.org/,另外,你的系统要配置好java环境,笔者写这篇文章的时候,官方版本是2.8,下载完了之后,进入里面的bin目录下,找到jmeter.bat这个批处理文件,然后双击,进入jMeter的工作界面:
注:有可能在已经安装好java环境之后还会报错,此时解决方法是在path中加入:%SystemRoot%\system32;%SystemRoot%;
这里面有很多功能,这我们先别去理会这一些,接下来,我们会一步一步地去创建一个web测试项目,让大家先从感性上去认识这个框架。
接下来,我们创建的这个项目是这样的,我们会建立一个计划,让它去访问我们设定好的url,并将访问得到的信息返回给我们。
首先我们要新建一个线程组,线程组的作用模拟多个访问对象,对系统可以进行压力测试,这里我们先有这个概念就行了。
然后再这些线程组下面我们要添加一个forEach控制器,它会帮我们去遍历我们要访问的url
添加完forEach逻辑单位之后,我们要设置一下一些属性。
其中,Add”_”before number:输入变量名称中是否使用“_”进行间隔。
在这里的url就是待会要我们输入的变量,returnVal就是每次遍历以url为前缀的变量之后输出的值。
这里很多人就会开始纳闷了,那么这个url是从哪里来的呢?
右击forEach逻辑控件,添加一个用户自定义的变量。添加待会要加载的url。如下图
这里我们要添加了两个以url为前缀的url,待会forEach控件就会从这里去遍历这些变量。
点击添加
好了,有了数据之后,其实我们还少了一样东西,我们是要做访问页面的请求,其实这里还少了一个发动请求的控件。这里我们添加一个http请求。
点击这个http请求,我们现在只需要添加一项内容。
这个${}表示取值的意思,returnVal其实和前面那个forEach控件里面的returnVal对应,这样一来,我们就可以明白这整个流程了。
对于每一个http请求,它会去取forEach控件中的returnVal的值,而returnVal的值来自对前缀为url的值的遍历结果。
写到这里,其实就差不多了,但是,还少了一样东西,就是如何看到显示结果,这里我们再添加一个监听器,返回结果时,我们就可以看到响应结果了。如图,我们右击线程组添加一个查看结果树。
然后点击菜单栏中的运行启动按钮,第一次运行时会要你先保存一下。
最后的左边的目录树应该是这样子的。
运行之后,点击查看结果树,你可以看到如下的图。
奇怪为什么一个是绿色的,一个是红色的。
绿色的表示访问是有结果的,红色是访问不成功的。这里我们访问了两个请求,一个是http://www.baidu.com,另外一个是http://www.google.com,百度这里是访问成功的,但是,在写这篇文章的时候,刚好是不成功的。