使用Jmeter进行API接口压力测试

发表于:2020-9-28 09:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:zhicha3x    来源:博客园

分享:
  前言
  压力测试的工具挺多的,但看了其他人的文章介绍,还是选了jmeter,开源、免费啊,
  下载
  下载地址:
  https://jmeter.apache.org/download_jmeter.cgi
  环境配置
  下载后解压zip到任意目录,然后配置环境变量
  变量名JMETER_HOME,变量值F:\apache-jmeter-4.0
  在变量名CLASSPATH新增
  %JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;
  %JMETER_HOME%\lib\jorphan.jar;
  %JMETER_HOME%\lib\logkit-2.0.jar;
  在Path新增
  %JMETER_HOME%/bin 
  启动
  然后启动cmd,输入F:\apache-jmeter-4.0\bin\jmeter.bat
  启动后:
  jmeter的主界面如下:
  更改语言版本为中文
  所需的api参数
  我们现在准备对以太坊的jsonrpcapi接口进行测试
  地址是:
  http://192.168.10.131:8545
  http请求头部配置:
  Content-Type:application/json
  请求内容:
  {
      "jsonrpc":"2.0",
      "id":1,
      "method":"eth_getBlockByNumber",
      "params":["0x331f75",true]
  }
  创建测试用例
  创建线程组
  在测试计划中右键弹出菜单,添加-》Threads(Users)-》线程组
  线程组的参数配置
  线程属性中,Ramp-Up Period(in seconds),间隔多长时间启动1个线程,直到创建100个线程,如果为0的话,则在开始测试后立刻创建100个线程
  可以选中“调度器”,设置需要持续测试的时间,
  设置http请求头部
  在通常编写的api中,是需要配置http请求头部的,在jmeter中也由相关的设置,
  在线程组单击右键出现菜单栏,添加-》配置元件-》HTTP信息头管理器
  添加api中需要的头部配置信息
  设置http请求默认值
  http请求默认值的设置,可以设置请求的服务器,其他环境下的http请求只需添加对应的子路径即可完成测试,
  方便测试环境与生产环境之间的切换:
  一般设置好服务器地址即可
  设置http请求
  右键点击“线程组”,出现菜单,添加-》Sampler-》HTTP请求
  HTTP请求的路径,本次测试并未填写,可根据实际情况添加
  在BodyData,中填入需要请求的参数,这里以太坊的jsonrpc-api,需要请求的参数是json格式的:
  {
      "jsonrpc":"2.0",
      "id":1,
      "method":"eth_getBlockByNumber",
      "params":["0x331f75",true]
  }
  为http请求添加查看结果树
  右键点击“http请求”(就是之前添加的http请求项),添加-》监听器-》查看结果树
  可在此页面中查看每次的api请求过程以及结果,方便后期分析
  为http请求添加Summary Report
  右键点击“http请求”,添加-》监听器->Summary Report
  可在此页面中查看报告
  开始测试
  右键点击”线程组“,start
  测试完成之后,可以查看每个api请求过程及结果
  以及综合报告
  综合报告各个参数指标说明
  ·Label:取样器/监听器名称
  ·Samples :事务数量
  ·Average:平均一个完成一个事务消耗的时间(平均响应时间)
  ·Min:最小响应时间
  ·Max:最大响应时间
  以上单位都是ms
  ·Std.Dev:偏离量,越小表示越稳定
  ·Error %:错误事务率
  ·Throughtput:每秒事务数,即tps
  ·KB/sec:网络吞吐量

  上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号