上一节安装jmeter成功后,也打开jmeter的界面操作模式看过,现在想进行具体的web测试
简单web测试流程为:添加线程组—>添加HTTP请求—>添加监听器—>添加相应的断言—>添加必要的配置元件
进入jmeter安装目录的bin目录下,双击“jmeter.bat”文件即可打开jmeter,操作界面如下
也可使用命令行模式来操作jmeter
测试计划的名称可自定义,更改后左侧列表随之发生改变
可以在“用户自定义变量”中定义全局变量
右键“测试计划”,选择“添加”—>“threads”—>“线程组”,即可添加一个线程组
新添加的线程组如下
线程数可以约略理解为虚拟用户数
“Ramp-Up Period”:表示在多长的时间内开始进行完所有线程
循环次数:表示每一个线程被循环多少次,如想永远循环,勾选“永远”即可
添加完线程组后,我们需要添加一个http请求,他会模拟浏览器来把我们设定的数据发送到服务器
添加http请求:右键线程组,“添加”—>“sampler”—>“HTTP请求”
添加完成的http请求页面如下:
名称及注释可根据自己喜好需要更改其,他数据需要根据我们所要测试的web接口进行填写
如下数据,来自“聚合数据网”的公开接口的数据,就以这个接口来做一次尝试
根据此接口的数据信息,填写http请求中的数值,如下图:
端口号不填写为默认值:80
超时时间根据自己的需求进行填写
编码格式使用“UTF-8”即可
其余信息可从接口数据信息中得到
http请求的数据填写完成后,其实我们已经可以运行jmeter来访问这个接口了
点击菜单栏中“绿色小三角”或者右键某线程组选择“start”都可以启动,所不同的是前者是运行所有线程组,后者是只运行选中的线程组
运行时,绿色小三角会变成灰色,运行完成会重新变为绿色
但是运行完此线程组,我们会发现,我们好像查看不到运行结果。因为我们还需要添加一个监听器,把运行的结果呈现给我们
添加监听器:右键需要添加监听器的元素,“添加”—>“监听器”—>“选择需要的监听器”
监听器既可以放在测试计划下监听整个测试计划的结果,也可以放在某个线程组中,甚至可以放在某个sampler下,单独之监听此采样器的结果
但是建议不要放太多监听器,根据需要来,否则会耗费太多内存
我们添加一个“查看结果树”的监听器,然后再次运行线程组,如下:
选择相应的请求,即可查看此http请求的“取样器结果”、“发送到服务器的请求”、“服务器返回的相应数据”
http请求前方的绿色小勾表示此请求成功。但是我们查看服务器返回的响应数据,可以看到返回的数据其实并不是我们原本想要的菜谱大全。那它为什么还是成功的?
如果我们没有告诉jmeter服务器返回的数据是什么样的才算是成功,jmeter默认服务器有响应即为成功。所以我们需要告诉jmeter,我们具体想要服务器返回什么样的数据
我们需要添加一个断言来告诉jmeter我们想要的
添加断言:右键需要添加断言的sampler,“添加”—>“断言”—>“响应断言”
添加的响应断言如下:
根据自己的需要填写响应断言的配置信息
如下配置信息表示:在服务器返回的数据中,应该包括“success”字段
因为我们从接口数据信息中查看到返回的正确数据中会有“success”字段。当然这样判断比较简略,可以适当根据需求修改。
添加好断言后我们可以再次运行下此线程组,查看监听器“查看结果树”中是否有变化:
可以看到此请求失败了,打开断言,它提醒我们找不到“success”字段
我们去查看此请求的服务器返回的“响应数据”(4.添加监听器 的最后一幅图),服务器提醒我们"错误的请求KEY!"。
查看接口的数据信息,是我们少写了一个“key”的请求参数,把这个参数写入“http请求”的“随请求一起发送参数”的表格中,并填入对应的key值,再次运行,查看结果树如下:
这样一个简单的web测试就算完成了。其他更复杂的情况,后面再记录