Jmeter Http接口性能测试

1.      启动Jmeter

Jmeter下载解压即可使用,Jmeter启动,点击D:\ProgramFiles\jmeter\apache-jmeter-2.8\bin下的jmeter.bat就可以了。

2.      添加线程组

如下图添加线程组

线程组相当于loadrunner的vuser,这里配置线程组的各项内容。主要有以下几点需要配置:

1)线程数:设置发送请求的线程数目。

2)Ramp-up period: 就是总共设定的线程数据在多长时间内启动。比如设定了100s和10个线程,那么每10秒钟就会启动一个线程。

3)循环次数:请求发生的重复次数,如果选择后面的“永远”(默认),那么 请求将一直继续,如果不选择“永远”,而在输入框中输入数字,那么请求将重复指定的次数,如果输入0,那么请求将执行一次。

4)调度器:这个调度器是用来设定运行的时间的,启动时间和结束时间都是必须要设定的。如果当前时间没有到达启动时间则会等待,如果当前时间到达了结束时间,线程会被停止。

3.      添加HTTP请求

下图展示如何添加HTTP请求

添加了HTTP请求会有如上的界面,这个界面用来设置HTTP请求的。主要需要设定的点有以下几项:

1)Web服务器:需要填入请求的服务器名称;接口的端口号;连接和响应的时间阈值,如果连接超时或者响应时间超时则判断为失败;路径为跟在服务器名后的请求路径;。

2)HTTP请求:设置实现方式,可以选择发送的方式;协议为我们使用到的协议;以及发送使用是get还是post方式,还可以设置编码如,GBK;路径为请求的url路径,不包括IP或服务器名后的部分。

3)同请求一起发送的参数:这里可以设置参数,值的话可以自己输入也可以使用自定义的变量\$

{paraname}

来表示很多的实例中选择一个。

4.      添加参数

在上面请求中我们可以看到使用了\$

{para_url}

这样的结果,这就是用户定义的参数。参数实现的方式有好几种,由于一般在做性能测试时,数据量会比较大,因而一般使用csv Data Set Config来设置参数。

上面就是csv data config的设置界面,各个界面解释如下:

Filename:就是数据文件的地址,可以是绝对地址也可以是相对地址。如果直接像图中这样填名字,则需要将数据文件放到和测试计划相同的目录下。

1)File encoding:读取文件的编码

2)Variable Names:参数的名称,多个参数,则使用逗号来分开,如,name,password。

3)Delimiter:文件中分割记录的分割符号,比如我们用tab就是\t。

4)Allow quoted Data:一般取false就可以了。但是如果有些特殊的就可以设置True。

5)Recycle on EOF:值为True则允许循环取值,也就是说如果文本中所有数据都被取完了一次,则重新从文件的第一行取值。如果为false那么就会更具下面的Stop thread on EOF来执行动作。

这种参数可以设置多个,然后在HTTP请求的设置参数。这种参数设置方法用到的比较多,无论是HTTP、java等等的sample中都可以使用。

5.      添加监听器

监听器一般是用来给出结果的。可以通过添加监听器查看请求响应时间、响应数据等。有时候监听器会严重影响到Jmeter客户端的性能。如果要给出性能结果,最好就不要添加IO操作过多的监听器了。但是在调试过程以及接口测试中可以使用这些监听器,如,结果树等。

从上面可以看到有很多的监听器,在性能测试中选择必要的监听器。对于没有用的监听器可以先删除。

一般在调试的时候会用到查看结果数、用表格查看结果等监听器。这里可以看到详细的请求和返回内容。

聚合报告中就会有整个场景的聚合报告,会提供响应时间、QPS等等数值。我们可以根据需要添加监听器。

6.      启动测试计划

上图中的运行中的启动和下面的图形化工具中的绿色箭头可以启动测试计划。

Jmeter Http接口性能测试的更多相关文章

  1. 【技术博客】 利用Postman和Jmeter进行接口性能测试

    利用Postman和Jmeter进行接口性能测试 作者:ZBW 版本:v1.1 在Phylab的开发过程中,对于生成报告接口的性能考量十分重要.原有的Latex接口虽然生成的报告美观,但编译Latex ...

  2. Jmeter+jenkins接口性能测试平台实践整理(一)

    最近两周在研究jmeter+Jenkin的性能测试平台测试dubbo接口,分别尝试使用maven,ant和Shell进行构建,jmeter相关设置略. 一.Jmeter+jenkins+Shell+t ...

  3. 一个使用Jmeter做接口性能测试的实战案例

    1 安装并配置Jmeter Jmeter的安装不在这里阐述,安装步骤非常简单. 直接进入主题 1.1 数据库连接配置 由于测试过程需要调用数据库获取响应部署数据,因此需要先建立与数据库的连接. 如果不 ...

  4. Jmeter+jenkins接口性能测试平台实践整理(二)

    本篇为Jmeter+jenkins+Ant方式执行性能测试 1.设置JDK,ANT环境变量: 2.build.xml文件: <?xml version="1.0" encod ...

  5. JMeter之Http协议接口性能测试

    一.不同角色眼中的接口 1.1,开发人员眼中的接口    1.2,测试人员眼中的接口 二.Http协议基本介绍 2.1,常见的接口协议 1.:2. :3. :4.:5.: 6. 2.2,Http协议栈 ...

  6. JMeter之Http协议接口性能测试--基础

    一.不同角色眼中的接口 1.1,开发人员眼中的接口    1.2,测试人员眼中的接口 二.Http协议基本介绍 2.1,常见的接口协议 1.:2. :3. :4.:5.: 6. 2.2,Http协议栈 ...

  7. 接口性能测试--JMeter

    1.JMeter Java Sampler介绍 setupTest做些初始化的工作,每个线程只执行一次 teardownTest做些清理工作,每个线程只执行一次 1.JMeter Java Sampl ...

  8. 【原创】相对完整的一套以Jmeter作为工具的性能测试教程(接口性能测试,数据库性能测试以及服务器端性能监测)

    准备工作 jmeter3.1,为什么是3.1,因为它是要配合使用的serveragent所支持的最高版本,下载链接 https://pan.baidu.com/s/1dWu5Ym JMeterPlug ...

  9. jmeter简单的接口性能测试

    原文转自:https://blog.csdn.net/lovesoo/article/details/78579547 Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件 ...

随机推荐

  1. 网络编程I/O函数介绍

    read和write #include <unistd.h> ssize_t read(int fd, void *buf, size_t count); ssize_t write(in ...

  2. [转载]队列queue和双端Dequeue

    转载自:http://uule.iteye.com/blog/2095650?utm_source=tuicool 注意:这都只是接口而已 1.Queue API 在java5中新增加了java.ut ...

  3. javascript 与vbscript 互相调用

    在 VBScript 的function 中可以直接编写 javascript 代码 但是只能返回一个字符串给变量 <html><head> <script type=& ...

  4. Android Studio利用GitHub托管项目

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  5. python切片取值和下标取值时,超出范围怎么办?

    可迭代对象下标取值超出索引范围,会报错:IndexError 可迭代切片取值超出索引范围,不报错,而是返回对应的空值. a=[1,2,3,4] a[99] Traceback (most recent ...

  6. scikit-learn 学习笔记-- Generalized Linear Models (一)

    scikit-learn 是非常优秀的一个有关机器学习的 Python Lib,包含了除深度学习之外的传统机器学习的绝大多数算法,对于了解传统机器学习是一个很不错的平台.每个算法都有相应的例子,既可以 ...

  7. 记一次git fatal: Unable to find remote helper for 'https'问题的解决

    登陆到远程linux服务器上,使用git, clone的时候报“fatal: Unable to find remote helper for 'https'”错,没管,绕过,使用git clone ...

  8. I.MX6 Manufacturing Tool V2 (MFGTool2) Update Command List (UCL) User Guide translate

    Manufacturing Tool V2 (MFGTool2) Update Command List (UCL) User Guide Contents(目录) Contents(目录)     ...

  9. 6-17 Shortest Path [2](25 分)

    Write a program to find the weighted shortest distances from any vertex to a given source vertex in ...

  10. python eval, exec. compile

    compile 编译某段代码, (将一个字符串编译为字节代码), 以方便重复调用. exec 可以理解为和if, for一样是一个语法声明, 而不是一个函数. 注意globals和locals的含义. ...