一、开发接口测试案例的整体方案:
  • 分析出测试需求,并拿到开发提供的接口说明文档;
  • 从接口说明文档中整理出接口测试案例(包括详细的入参和出参数据以及明确的格式和检查点)。
  • 和开发一起对评审接口测试案例
  • 结合开发库,准备接口测试案例中的入参数据和出参数据,并整理成csv格式的文件。
  • 结合接口测试案例文档和csv格式的数据文档,做接口测试案例的自动化案例开发。

二、接口自动化适用场景:

目前设计的自动化接口测试案例有两个运行场景:

  1. 测试前置、开发自测:一个新的自动化接口测试案例开发完成后,直接发给接口对应的开发,安排在开发本地环境执行,一旦开发确认完成接口开发,就开始执行接口测试案例,基本上可以实时拿到测试结果,方便开发快速做出判断。【开发本地运行的方式就是打开JMeter工具,导入JMX文件,开始执行可。】
  2. 回归测试:开发本地测试通过后,或整个需求手工测试通过后,把自动化的接口测试案例做分类整理,挑选出需要纳入到回归测试中的案例,在持续集成环境重新准备测试数据,并把案例纳入到持续集成的job中来,这些用于回归的接口测试案例需要配置到持续集成平台自动运行。
  3. JMeter用途
    负载测试:模拟多用户并发
    压力测试:测试max负载能力

三、安装JMeter

  1. Jdk1.6或以上:
    [http://www.oracle.com/technetwork/java/javase/downloads/index.html]
  2. Jmeter,下载址址:[http://jmeter.apache.org/download_jmeter.cgi]
  3. 插件的下载安装地址:http://www.jmeter-plugins.org/
  4. 打开解压目录下的bin文件,运行ApacheJMeter,即可看到运行界面

四、使用

1、添加线程组,设置

Test->Add -> Threads (Users) -> Thread Group

a. Number of Threads: 100 (连接目标网站的用户数量)
b. Loop Count: 10 (执行测试的次数)
c. Ramp-Up Period: 100(告诉 JMeter 延迟多少秒才开始下一个user,设置为0的话意味着同时并发请求)

2. 添加HTTP request Default

    填写主机名或者IP地址,端口号
> protocal:发送测试请求时使用的协议

> server name or ip:被测试服务器的ip地址或者名字

> path: 默认的起始位置。比如将path设置为/jmeter,那么所有的http请求的url中都将增加/jmeter路径。
> port number: 服务器提供服务的端口号
3、添加 HTTP Request
      Add ->Sampler->HTTP Request.
      
4、添加信息头
       
5、监听器Listener
      为了记录测试信息并且可以使用Jmeter提供的可视化界面查看测试结果
6、Run->测试报表参数
>Aggregate Report聚合报告
 - Latency:系统响应单个任务所需要的时间,即平均响应时间。
 - Label :各个模拟测试的名称
 - Samples :各个测试的样本总数
 - Average :每个请求的平均响应时间
 - Median :中值,即50%请求的平均响应时间
 - 90%Line :90%请求的响应时间
 - Min :最小响应时间
 - Max :最大的响应时间Error% :错误响应的概率。即无法响应的概率。
 - ThroughPut :吞吐量 -- 默认情况下表示每秒完成的请求数(Request per Second)。
 - KB/Sec :每秒从服务器端接收到的数据量。
> View Results Tree
查看每个请求的详细内容,可选中error只记录报错的信息
7、加载已存在的元素
TestPlan->Merge,选中已存在的XX.jmx,导入即可。节省时间

8、关于保存

保存element:只保存一个
保存test plan:会保存所有的组件
9、合并多个测试计划
已建测试计划的条件下,marge另一个计划会变成多测试计划

五、Timer定时器

设置1个user,重复100次,constantTimer里线程延迟5000ms,运行,观察表格结果

sample1 的开始时间:18:38:55.276

sampleTime:175ms

延迟时间:5000ms,

以上相加=18:39:45,所以sample2的开始时间是18:39:46

六、Assertion断言

1、 Response Assertion:响应断言

(1)ApplyTo适应范围:一般选“main sample only”

只当请求触发多个服务器的时候,有main sample和sub sample之分

(2)响应文本:

(3) 响应header:

(4)响应代码:

当http相应代码.!当要验证404、501等http相应代码,需勾选“ignore status”

2、Duration Assertion:相应持续时间断言(断言响应时间不大于XX)

3、Size Assertion:比较响应的字节大小

4、XML Assertion:

七、Controller

1、 Recording Controller
录制测试步骤???
2、Simple Controller
user请求的容器
3、Loop Controller
控制循环次数
4、random Controller
随机发送请求,假设线程组(user1,LoopCount1),循环控制器(LoopCount50)-->结果发送请求数=100
7、Module Controller
多个功能存储在一个模块里面,模块选择器选择特定模块进行运行


八、处理器

1、 前置处理器:在sample请求之前执行
2、后置处理器:在请求之后执行
设置线程10,重复10次,后置处理器->Result Status Action Handler->取样器错误之后“立即停止”->运行
请求( “www.google/abc”  ),结果表格查看- > 只发送了10个请求

~~之后再补充吧












JMeter(1)-介绍+环境+安装+使用的更多相关文章

  1. 【NO.2】Jmeter-安装Jmeter - 在Linux环境安装Jmeter - 在Windows环境安装Jmeter

    当配置完Jmeter运行的环境之后,就可以开始安装Jmeter了. 为什么既要告诉各位"在Linux系统内安装Jmeter",又要告诉各位"在Windows系统内安装Jmeter"?因为当我们在构建1 ...

  2. Jmeter在windows上安装和环境配置

    一.Jmeter简单介绍 Apache JMeter是Apache组织开发的基于Java的压力测试工具.它可以用于测试静态和动态资源,例如静态文件.Java小服务程序.CGI 脚本.Java 对象.数 ...

  3. Jmeter系列(2)- Jmeter工具介绍、Jmeter安装目录介绍、Jmeter面板介绍

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Jmeter支持哪些测试场景? Jme ...

  4. 三、安装cmake,安装resin ,tars服务,mysql 安装介绍,安装jdk,安装maven,c++ 开发环境安装

    三.安装cmake,安装resin 2018年07月01日 21:32:05 youz1976 阅读数:308   开发环境说明: centos7.2 ,最低配置:1核cpu,2G内存,1M带宽 1. ...

  5. 挨批记后记--Jmeter环境安装

    挨批之后的艰难挣扎: 首先说所要造的数据是性能测试任务的创建,而创建任务还需要先创建场景,场景则又牵涉到jmx文件... 经过搜索后发现jmx文件通过jmeter生成,所以软件的安装就开始了.. jm ...

  6. GO介绍,环境的配置和安装 简单使用

    1. 介绍与安装 Golang 是什么 Go 亦称为 Golang(按照 Rob Pike 说法,语言叫做 Go,Golang 只是官方网站的网址),是由谷歌开发的一个开源的编译型的静态语言. Gol ...

  7. 基准测试-jmeter压力测试activeMQ之一环境安装配置

    jmeter压力测试activeMQ 摘要:linux(CentOS)单机activeMQ安装.window(2008Server)Jmeter配置activeMQ包.Jmeter配置linux监控 ...

  8. RabbitMQ简单介绍+Windows环境安装

    文章目录 1.RabbitMQ简介2.RabbitMQ与其他MQ有什么不同3.RabbitMQ环境安装3.1 安装erlang3.2 安装rabbitmq-server4. RabbitMQ管理平台介 ...

  9. 【ubantu 安装Jmeter和Jdk环境】

    Linux环境安装Java(含安装包下载地址) 一定要使用有权限的用户 1.下载JDK压缩包,下载地址:https://blog.csdn.net/duketyson2009/article/deta ...

随机推荐

  1. 13、解决java -version命令报错

    13.1.问题描述: 安装jdk后在dos界面中输入"java -version"回车的时候报如下错误: Error opening registry key'software\J ...

  2. 教你几招HASH表查找的方法

    摘要:根据设定的哈希函数 H(key) 和所选中的处理冲突的方法,将一组关键字映象到一个有限的.地址连续的地址集 (区间) 上,并以关键字在地址集中的"象"作为相应记录在表中的存储 ...

  3. mapboxgl 互联网地图纠偏插件(二)

    前段时间写的mapboxgl 互联网地图纠偏插件(一)存在地图旋转时瓦片错位的问题. 这次没有再跟 mapboxgl 的变换矩阵较劲,而是另辟蹊径使用 mapboxgl 的自定义图层,重新写了一套加载 ...

  4. Linux Netfilter框架分析

    目录 Netfilter框架 Netfilter的5个hook点 netfilter协议栈数据流分析 连接跟踪conntrack conntrack连接跟踪表条目 连接跟踪表大小 管理连接跟踪表 ip ...

  5. SQL查询语句中参数带有中文查询不到结果

    今天写个小demo的时候发现sql语句里面的username为中文的时候就不能查到正确结果,sql语句如下: String sql = "select * from user where u ...

  6. Leetcode 递归题

    24. 两两交换链表中的节点 题目描述: 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表. 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换. 示例: 给定 1->2-&g ...

  7. CDN相关知识及CDN绕过

    #什么是CDN? 内容分发网络(Content Delivery Network,简称CDN)是建立并覆盖在承载网之上,由分布在不同区域的边缘节点服务器群组成的分布式网络.CDN应用广泛,支持多种行业 ...

  8. 【网络IO系列】 预备知识 操作系统之内核程序和用户程序

    一.概念 首先我们先来复习一下操作系统的概念和作用 操作系统是用户和硬件之间的一层媒介程序,为上提供编程接口,为下调用资源,管理驱动,以使用硬件. 从以上的表述我们可以看出OS的两点作用,第一个是对下 ...

  9. 如何在Apache HttpClient中设置TLS版本

    1.简介 Apache HttpClient是一个底层.轻量级的客户端HTTP库,用于与HTTP服务器进行通信. 在本教程中,我们将学习如何在使用HttpClient时配置支持的传输层安全(TLS)版 ...

  10. C语言:toascii()函数

    /* 头文件:#include <ctype.h> 定义函数:int toascii(int c); 函数说明:toascii()会将参数c 转换成7 位的unsigned char 值, ...