JMeter是Apache组织开源的测试工具,可用于基于协议的功能和性能测试。

如今,前后端分离和微服务架构日益流行,在接口层面已经”暴露“了越来越多的业务处理逻辑。加上API接口通常需要向前兼容,引发了大量的回归测试工作量,从而带来更多的接口测试需求。

本文我们介绍如何使用JMeter来做HTTP接口的测试。

JMeter安装

  1. 这里下载JMeter最新版,解压到本地目录;
  2. 双击bin目录下的jmeter.bat启动JMeter,非Windows系统请使用jmeter文件;
  3. 依次选择菜单Options->Choose Language->Chinese(Simplified),可切换到中文;想永久修改语言的,请编辑bin目录下的jmeter.properties文件;

    #language=en
    language=zh_CN
  4. 为防止乱码,请修改字符集为UTF-8,在jmeter.properties文件中加入如下行;

    #sampleresult.default.encoding=ISO-8859-1
    sampleresult.default.encoding=UTF-8

快速开始

  1. 右击左侧树状结构中的TestPlan,选择添加->线程(用户)->线程组,进入线程组设置页面;
    image.png
    错误处理: 决定发生错误后所执行的动作,如继续还是停止。
    线程数: 并发的虚拟用户数。
    Ramp-Up时间(秒): 启动所有线程经过的时间,图中配置每秒将启动2(10/5)个线程。
    循环次数: 重复执行的次数,图中配置将发送30(10x3)次请求。勾选永远会不停地发送请求。
    延迟创建线程直到需要: 控制线程的创建的时间,默认不选中表示初始创建所有线程。注意此处线程创建和Ramp-Up中执行开始的区别。
    调度器
    持续时间: 控制运行的总时间,到时间循环未结束也将强行终止。
    启动延时: 在测试启动和开始执行之间,增加一个延迟。
  2. 右击新建的线程组,选择菜单添加->取样器->HTTP请求,在打开的页面做如下配置;
    image.png
    协议: http
    服务器名称: www.baidu.com
    端口: 保持空为默认值80;
    请求类型: 选择GET
    参数: 添加查询参数,key为”wd“、值为”禅道“。
  3. 右击线程组,选择菜单监听器->查看结果树,进入请求结果查看器页面;
  4. 依次点击工具栏中的保存和执行按钮,试运行我们配置的HTTP请求;
  5. 在求结果查看器中,选择一个HTTP请求,右侧可查看其状态、请求和响应的内容。
    image.png
  6. 右击线程组,选择菜单添加->断言->HTML断言,在打开的页面做如下配置;
    image.png
    测试字段: 响应文本
    测试模式: Apache JMeter
  7. 依次点击工具栏中的保存和执行按钮,执行接口测试;
  8. 在求结果查看器中,选择最后一个HTTP请求,确认执行和断言成功。
    image.png

专题目录


陈哥聊测试
158 声望3.3k 粉丝

资深敏捷测试顾问,国内知名项目管理软件禅道团队成员。