JMeter是Apache大树下的又一个果实,是一个压力测试工具,因为使用方便又开源免费,也被用来做功能测试。项目里也是拿JMeter来做功能性的接口自动化测试。这里大概说明下怎么用。
首先还是先下载。到官网http://jmeter.apache.org/下载压缩包,下完后直接解压即可,免安装,跨平台。这里以Windows操作系统下的3.2版本为例,我们到apache-jmeter-3.2\bin下双击jmeter.bat运行程序打开界面。JMeter支持命令行操作和GUI界面操作,可以界面有中文语言可以选择。如果运行jmeter时命令行窗口报如下错误:
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5
解决办法是:点击"开始"按钮 -> 右击"命令提示符" -> "更多" -> "以管理员身份运行" -> 在弹出的命令行界面里进入apache-jmeter-3.2的bin目录,敲入运行命令jmeter.bat后回车,弹出jmeter界面。后续再双击jmeter.bat不再提示以上错误了。
接着再看怎么玩jmeter。在弹出的界面中有一个"测试计划"和"工作台",我们右击"测试计划" -> 选择"添加" -> Threads(Users) -> 线程组,可以在右边窗口"名称"里输入自定义命令 -> 右击该线程组,选择"添加" -> 选择"逻辑控制单元"下的"事务控制器",可以在右边窗口"名称"里输入自定义命令 -> 右击该事务控制器,选择"添加" -> 选择"配置元件"下的"HTTP信息头管理器" -> 在右边窗口添加http消息头 -> 右击该事务控制器,选择"添加" -> 选择"Sampler"下的"HTTP请求" -> 在右边窗口输入相应的http请求信息 -> 右击该线程组,选择"添加" -> 选择"监听器"下的"察看结果树" -> 最后点击上方绿色启动按钮跑该测试用例,点击"察看结果树",在右边窗口点击对应项看测试结果,见下图
点击"请求"可以看请求消息体,"响应数据"看响应报文。简单使用就结束了。如果用于正式项目,那么可以把HTTP请求里的IP和端口做成变量,公共消息头也做成变量,数据库链接配置信息也可以做成变量,这样测试用例只需要引入变量名即可。