在测试移动APP时,会有很多接口需要做测试,我在这里介绍一下对HTTP接口做功能、性能的测试。首先我们会从开发人员拿到接口数据。

    一、测试需求描述

1、 本次测试的接口为http服务端接口

2、 接口:查询功能接口

3、接口描述:用户对订单列表进行查询

IP:http://192.168.8.197/biz/api/v1/mobile/doctor/subscribe/orderList

请求方式:get

端口号:9090

请求头参数:token = ffb74003075c4094853c98bfcfd081b7

请求参数:stateType = ALL  ,  beginLine = 1

响应数据:显示所有订单的详情信息

 二、使用Jmeter部署环境

1、首先打开Jmeter,在测试计划下添加线程组。

2.在线程组下添加HTTP信息头管理器,如果接口没有请求头参数,就可以不加。

3.在线程组下添加HTTP请求。

4.在HTTP请求下添加察看结果数

5.在HTTP请求下添加聚合报告

三,部署完成后,开始填入数据进行测试

1、首先填写HTTP信息头管理器,点击添加,把请求头参数:token = ffb74003075c4094853c98bfcfd081b7填入进去。

2、填写HTTP请求,点击添加,把请求参数:stateType = ALL  ,  beginLine = 1填入进去。

协议:http

IP:192.168.8.197

端口号:9090

请求方式:get

路径:/biz/api/v1/mobile/doctor/subscribe/orderList

3、设置线程组,根据测试需求来设置。我们这里设置的是10个虚拟用户,循环1次。

在这里详情解说一下线程组设置:

(1)线程数:即用户数,一个虚拟用户占用一个进程或线程,需要多少个用户施压,就设置多少虚拟用户数,在这里就是设置多少个线程数。

(2)Ramp-Up Period(in seconds)准备时长:设置的虚拟用户数需要在多长时间内全部启动。例如线程数为100,准备时长为10,那么需要10秒钟启动100个线程,也就是每秒钟启动10个线程。我们这里设置1秒,表示1秒内10个用户全部启动。

(3)循环次数:每个线程发送请求的次数。例如线程数为10,循环次数为10,那么每个线程发送10次请求,则总请求数为10*10=100 。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。

(4)Delay Thread creation until needed:直到需要时延迟线程的创建。

(5)调度器:可以设置线程组的持续时间或启动时间和结束时间。

当选用配置调度器时,需要设置循环次数为永远,防止因循环次数不够而终止压测。

持续时间(秒):测试计划持续多长时间,例如1分钟就填写60,会覆盖结束时间。

启动时间:测试计划什么时候启动,启动延迟会覆盖它。当启动时间已过,手动运行脚本时当前时间也会覆盖它(但启动时间页面显示不会变)。

结束时间:测试计划什么时候结束,持续时间会覆盖它。

启动延迟(秒):测试计划延迟多长时间启动,会覆盖启动时间。

4、全部都设置好了就可以点击绿色箭头运行了,或者点击“运行”菜单栏的“启动”列表。运行完成后,我们来看看查看结果数。点击响应数据查看返回数据是否和研发部编写的一致。

5、请求都成功后,我们来看看聚合报告,这个数据就是我们的测试结果了。

6、我们这里解说一下聚合报告各参数的值,主要是查看Average和Throughput的值。

(1)Label:请求对应的name属性值

(2)Samples:表示这次测试中一共发出了多少个请求,我们这里是模拟10个用户,每个用户迭代1次,那么这里显示10。

(3)Average:单个 Request 的平均响应时间。

(4)Median:中位数, 50% 的样本都没有超过这个时间

(5)90% Line:90%的样本都没有超过这个时间

(6)95% Line:95% 的样本都没有超过这个时间

(7)99% Line:99% 的样本都没有超过这个时间

(8)Min:最小响应时间

(9)Max:最大响应时间

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

(11)Throughput:吞吐量,表示每秒完成的请求数

(12)Received KB/Sec:收到KB /秒的吞吐量测量接收到的字节每秒

(13)Sent KB/Sec:送千字节/秒的吞吐量测量送千字节每秒

使用Jmeter进行http接口做功能、性能测试的更多相关文章

  1. Jmeter 使用实践 - 接口 diff 测试

    大多数人都使用 Jmeter 做过性能测试,但是在使用的过程中你会发现,它不仅可以做性能测试和功能测试,还能够满足基本的接口测试需求. 相比其他工具,Jmeter 入门门槛较低,安装也比较方便,根据自 ...

  2. jmeter测试dubbo接口

    本文讲解jmeter测试dubbo接口的实现方式,文章以一个dubbo的接口为例子进行讲解,该dubbo接口实现的功能为: 一:首先我们看服务端代码 代码架构为: 1:新建一个maven工程,pom文 ...

  3. Jmeter使用实践-接口diff测试

    Jmeter使用实践-接口diff测试 大多数人都使用 Jmeter 做过性能测试,但是在使用的过程中你会发现,它不仅可以做性能测试和功能测试,还能够满足基本的接口测试需求. 相比其他工具,Jmete ...

  4. Jmeter+ant+Jenkins接口自动化框架搭建

    摘自:https://testerhome.com/topics/13389 一.背景  上一篇讲了Jmeter 接口自动化-脚本数据分离实例,我们知道怎么利用Jmeter去编写接口自动化脚本,但是接 ...

  5. Jmeter实现dubbo接口压测案例

    当前项目中重构了消息服务,需要对消息服务接口做性能压测,评估消息服务的性能情况 通过和开发对接,目前消息服务是通过dubbo接口对内提供服务,所以才有了这边文章的记录 最初的压测这个dubbo接口有三 ...

  6. jmeter中测试接口

    本文主要介绍在jmeter中测试接口:主要从以下几个方面进行说明: 1.jmeter简介 2.jmeter怎么做接口测试 3.jmeter进行参数化的几种形式 4.jmeter中处理乱码方法 5.jm ...

  7. Jmeter如何测试接口

    现在对测试人员的要求越来越高,不仅仅要做好功能测试,对接口测试的需求也越来越多!所以也越来越多的同学问,怎样才能做好接口测试? 要真正的做好接口测试,并且弄懂如何测试接口,需要从如下几个方面去分析问题 ...

  8. 『动善时』JMeter基础 — 50、使用JMeter测试WebService接口

    目录 1.什么是WebService 2.WebService和SOAP的关系 3.什么是WSDL 4.测试WebService接口前的准备 (1)如何判断是WebService接口 (2)如何获取W ...

  9. 『动善时』JMeter基础 — 51、使用JMeter测试WebService接口

    目录 1.什么是WebService 2.WebService和SOAP的关系 3.什么是WSDL 4.测试WebService接口前的准备 (1)如何判断是WebService接口 (2)如何获取W ...

  10. JMeter学习-022-JMeter 分布式测试(性能测试大并发、远程启动解决方案)

    在使用 JMeter 进行性能测试时,难免遇到要求并发请求数比较的场景,此时单台测试机的配置(CPU.内存.带宽等)可能无法支持此性能测试场景.因而,此时 JMeter 提供的分布式测试功能就有了用武 ...

随机推荐

  1. Delphi调用C#编写的WebService 注意事项

                            返回的字段值区分大小写,c#和Delphi的字段要一致

  2. Linux 下配置 nginx + 两个 tomcat 的负载均衡

    前提:已经安装了 nginx 和两个 tomcat 1.修改 nginx.conf 配置文件    1)在 http{} 节点之间添加 upstream 配置 2)修改 nginx 的监听端口,默认是 ...

  3. Helm介绍

    1.为什么要用Helm? 首先在原来项目中都是基于yaml文件来进行部署发布的,而目前项目大部分微服务化或者模块化,会分成很多个组件来部署,每个组件可能对应一个deployment.yaml,一个se ...

  4. ubuntu16中部署web项目到tomcat,xft和securecrt连接到ubuntu16(待续。。。)

    xftp    xftp中新建连接    ubuntu中安装和启动ssh服务    xftp连接到ubuntu 安装JDK,Tomcat    sudo tar -zvxf jdk.tar.gz   ...

  5. Linux 用户与组

    在 Linux 操作系统下,如何添加一个新用户到一个特定的组中?如何同时将用户添加到多个组中?又如何将一个已存在的用户移动到某个组或者给他增加一个组?对于不常用 Linux 的人来讲,记忆 Linux ...

  6. Django Cache缓存系统学习--数据库缓存

    Django是动态网站,用户每一次请求页面,服务器都会执行以下操作:数据库查询.渲染模版.执行业务逻辑,最后生成用户可查看的页面.当访问量比较大的时候,会消耗掉大量的资源,这时候就会考虑到缓存问题. ...

  7. event.keyCode用法及列表

    HTML 用户名:<input type="text" id="UserAccount" onKeyPress="JumpByEnter(Use ...

  8. try-catch-finally 与返回值的修改

    先看一段java代码,func返回值为int: public static int func() { int result = 0; try { result = 1; return result; ...

  9. 2018-2019-2 20175218 实验二《Java面向对象程序设计》实验报告

    2018-2019-2 20175218 实验二<Java面向对象程序设计>实验报告 一.面向对象程序设计-1 1.实验要求 参考 http://www.cnblogs.com/roced ...

  10. hosts更改域名之后怎么生效

    原先配置好的ip + 域名,现在更改了域名,可是保存了hosts之后,访问到的还是原先的域名. 现将方法记录如下,亲测有效: 新建(在桌面新建即可)一个txt文件,将hosts文件里所有的配置复制过来 ...