JMeter是Apache组织开源的测试工具,可用于基于协议的功能和性能测试。
如今,前后端分离和微服务架构日益流行,在接口层面已经”暴露“了越来越多的业务处理逻辑。加上API接口通常需要向前兼容,引发了大量的回归测试工作量,从而带来更多的接口测试需求。
本文我们介绍如何使用JMeter来做HTTP接口的测试。
JMeter安装
- 从这里下载JMeter最新版,解压到本地目录;
- 双击bin目录下的jmeter.bat启动JMeter,非Windows系统请使用jmeter文件;
依次选择菜单Options->Choose Language->Chinese(Simplified),可切换到中文;想永久修改语言的,请编辑bin目录下的jmeter.properties文件;
#language=en language=zh_CN
为防止乱码,请修改字符集为UTF-8,在jmeter.properties文件中加入如下行;
#sampleresult.default.encoding=ISO-8859-1 sampleresult.default.encoding=UTF-8
快速开始
- 右击左侧树状结构中的TestPlan,选择添加->线程(用户)->线程组,进入线程组设置页面;
错误处理: 决定发生错误后所执行的动作,如继续还是停止。
线程数: 并发的虚拟用户数。
Ramp-Up时间(秒): 启动所有线程经过的时间,图中配置每秒将启动2(10/5)个线程。
循环次数: 重复执行的次数,图中配置将发送30(10x3)次请求。勾选永远会不停地发送请求。
延迟创建线程直到需要: 控制线程的创建的时间,默认不选中表示初始创建所有线程。注意此处线程创建和Ramp-Up中执行开始的区别。
调度器
持续时间: 控制运行的总时间,到时间循环未结束也将强行终止。
启动延时: 在测试启动和开始执行之间,增加一个延迟。 - 右击新建的线程组,选择菜单添加->取样器->HTTP请求,在打开的页面做如下配置;
协议: http
服务器名称: www.baidu.com
端口: 保持空为默认值80;
请求类型: 选择GET
参数: 添加查询参数,key为”wd“、值为”禅道“。 - 右击线程组,选择菜单监听器->查看结果树,进入请求结果查看器页面;
- 依次点击工具栏中的保存和执行按钮,试运行我们配置的HTTP请求;
- 在求结果查看器中,选择一个HTTP请求,右侧可查看其状态、请求和响应的内容。
- 右击线程组,选择菜单添加->断言->HTML断言,在打开的页面做如下配置;
测试字段: 响应文本
测试模式: Apache JMeter - 依次点击工具栏中的保存和执行按钮,执行接口测试;
- 在求结果查看器中,选择最后一个HTTP请求,确认执行和断言成功。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。