文档章节

JMeter接口测试入门

魔鬼妹子
 魔鬼妹子
发布于 06/21 11:27
字数 1005
阅读 1
收藏 0

1、JMeter简介

JMeter是Apache组织开发的基于Java的压力测试工具。具有开源免费、框架灵活、多平台支持等优势。除了压力测试外,JMeter在接口测试方面也有广泛的应用。

2、JMeter安装

访问JMeter官网:https://jmeter.apache.org/download_jmeter.cgi,点击下载后解压缩,依次打开\apache-jmeter-4.0\JMeter\bin,运行jmeterw.cmd即可。(建议在桌面创建jmeterw.cmd的快捷方式,方便快速打开)

3、使用JMeter完成单个接口测试

3.1 添加线程组

在“测试计划”上点击鼠标右键-->添加-->threads(Users)-->线程组。

3.2 添加http请求


在“线程组”打开鼠标右键-->添加-->sampler-->http请求

添加完http请求后,填写对应的域名、接口以及请求参数,如下图所示:

3.3 添加断言


在每一个http请求下,都应该增加一层判断机制(response的关键字),即添加结果断言。

在“http请求”打开鼠标右键-->添加-->Assertions-->response Assertion

3.4 查看请求结果


在“线程组”打开鼠标右键-->添加-->监听器-->察看结果树、断言结果、聚合报告

1、查看结果树:打开察看结果树,绿色代表测试通过,红色代表测试失败。在此我们可以看到详细的请求头、响应时间、请求参数和返回结果;方便我们进行接口调试

2、断言结果:断言结果是查看返回的数据是否符合给定的断言。

3、查看聚合报告:

Label:每个 JMeter 的 请求都有一个 Name 属性,这里显示的就是 Name 属性的值

#Samples:表示本次测试中一共发出了多少个请求

Average:平均响应时间

Median:也就是 50% 用户的响应时间

90%Line:90% 用户的响应时间

Min:最小响应时间

Max:最大响应时间

Error%:本次测试中出现错误的请求的数量/请求的总数

Throughput:吞吐量——默认情况下表示每秒完成的请求数

KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec

4、使用JMeter完成多个接口组合

以上,单个接口的请求已经完成。在接口测试中,是多个不同接口的组合,因此就会涉及到接口传值。我们可以使用正则表达式和 Json Path Extractor来获取接口返回值。

4.1 正则表达式

所谓正则表达式,即一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。

在“http请求”打开鼠标右键-->添加-->post processions-->Regular Expression Extractor

Name of created variable:正则表达式名称,我们使用${名称}来进行引用;

Regular Expression:设置提取规则

.  匹配任何字符

+   一次或更多次

?    停止在第一个匹配成功时

Templates:表示用哪个正则表达式模板获取的值 ,默认使用$1$,如果有多个正则表达式,则可以使用$2$,$3$等,表示解析到的第几个值给test。

Match No.:-1表示全部,0随机,1第一个,2第二个

Default value:如果没有取到值,则默认使用该值,可以为空

4.2  Json Path Extractor

 使用Json Path Extractor需要下载第三方插件,访问https://jmeter-plugins.org/wiki/PluginsManager/下载plugin Manager,并将下载下来的jar包放到JMeter的lib/ext目录下,重启JMeter。

重启后,在options菜单下点击“plugins Manager”,在available plugins中,搜索json path extractor,点击apply changes andrestart jmeter即可。

--------------------- 
来源:CSDN 
原文:https://blog.csdn.net/sinat_32434273/article/details/81065731 
版权声明:本文转载文章,转载请附上博文链接!

本文转载自:https://blog.csdn.net/sinat_32434273/article/details/81065731

魔鬼妹子
粉丝 1
博文 10
码字总数 443
作品 0
广州
QA/测试工程师
私信 提问
以百度天气预报查询API 服务为例,创建Jmeter JavaSampler请求范例

最近在整理性能测试的一些入门文章,给同事们分享,介绍API 接口自动化和性能测试入门。 下面将以百度天气预报查询API 服务为例,创建Java API 请求范例。 1. API 服务信息 参考文档:https...

海上测试猿
2018/07/26
0
0
个人之在团队中默默的推行jmeter的使用

前言 一, 测试不高效,也妨碍的老胡打杂的不高效,得加班。 二, 一些真正的好东西,推广,自己成长,其他人一起成长三, 高效的团队,合作很愉快,自己真的舒服。不会为了小事,无效的折腾...

鸟菜啊
04/08
61
0
分析 JMeter 应用性能测试结果

JMeter是一款非常流行的开源负载测试工具,得益于基于Java的扩展点,它有着强大灵活性。但分析结果的数据不能与其他程序衔接。关于这点,最近 PerfBytes 的博客也有所提到,因为JMeter自身并...

oschina
2016/10/31
3.7K
0
[Jmeter]日常工作中踩的坑

[JMeter] Error in rconfigure() method java.rmi.ConnectException:Connection refused to host 问题分析:抛出的问题中,提示Java远程调用方法出现了异常,连接拒绝了master,可能是主机与奴...

覃光林
05/24
147
0
jmeter--001.介绍、下载与安装

一.介绍 使用场景:   -1.接口测试   -2.性能测试   .... 特点:   -1.开源、轻量级、插件化   -2.适合自动化和持续集成 二.下载(Windows环境) 下载网址:http://jmeter.apache....

小红帽爱吃大灰狼
2018/07/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

怎样在磁盘上查找MySQL表的大小?这里有答案

导读 我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎。不应该在 INFORMATION_SCHEMA.TABLES 中提供这些信息吗?没那么简单! 我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎...

问题终结者
24分钟前
5
0
jQuery load() 方法实现加载远程数据

jQuery load() 方法是简单但强大的 AJAX 方法。load() 方法从服务器加载数据,并把返回的数据放入被选元素中。 语法: $(selector).load(URL,data,callback);必需的 URL 参数规定您希望加载的...

前端老手
25分钟前
5
0
Spring Boot缓存实战 Redis 设置有效时间和自动刷新缓存-2

问题 上一篇Spring Boot Cache + redis 设置有效时间和自动刷新缓存,时间支持在配置文件中配置,说了一种时间方式,直接扩展注解的Value值,如: @Override@Cacheable(value = "people#${s...

xiaolyuh
33分钟前
9
0
怎样在磁盘上查找MySQL表的大小?这里有答案

我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎。不应该在 INFORMATION_SCHEMA.TABLES 中提供这些信息吗?没那么简单! 我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎。不应...

Linux就该这么学
58分钟前
5
0
Redis

一、Redis支持的几种数据类型:字符串、List、SET、HASH、ZSET 二、Redis的缓存技术主要是为了降低关系数据库的负载并减少网站成本 三、在Redis里面,被MULTI命令和EXEC命令包围的所有命令会...

BobwithB
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部