使用JMeter测试接口

2020年03月21日 160点热度 0人点赞 0条评论

添加Thread Group

一个thread就类似于一个用户

右键Test Plan->Add->Threads(Users)->Thread Group

设置用户数,启动时间,循环次数

添加HTTP Request

右键Thread Group->Add->Sampler->HTTP Request

根据实际情况设置

添加Assertion等

右键HTTP Request->Add,可以看到有断言,前置处理器,后置处理器,配置,定时器,监听器

  • 配置可以对请求进行一些设置,比如说cookie,header
  • 定时器可以用来延时,防止发送过快造成服务负载过高
  • 前置处理器和后置处理器顾名思义是在HTTP Request前后执行
  • 断言用来判断请求是否执行成功、是否到达预期
  • 监听器可以用来搜集数据、呈现数据

实例

记录一个压测实例

  • 右键Test Plan->Add->Threads(Users)->Thread Group,设置用户数和循环次数
  • 右键Thread Group->Add->Sampler->HTTP Request,根据实际情况填写
  • (由于接口要验证token)右键HTTP Request->Add->Config Element->HTTP Header Manager,设置头部信息
  • (由于请求体是json)接着设置头部信息, content-type: application/json;charset=utf-8

使用GUI界面

  • 右键HTTP Request->Add->Listener->View Results Tree
  • 右键HTTP Request->Add->Listener->Aggregate Report
  • 运行测试
  • 查看结果树:绿色的为成功的,红色的为失败的
  • 聚合报告:Average等为响应时间;90%即为90%的响应时间小于该值

使用命令行

可以先增加堆栈大小

编辑jmeter文件,修改HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m"

然后在终端中运行

./jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

[Path to web report folder]应为一个空目录

测试完成后,在自己指定的目录中可以看到有个网页报告

likole

人能常清静,天地悉皆归

文章评论