一、开发接口测试案例的整体方案:
  • 分析出测试需求,并拿到开发提供的接口说明文档;
  • 从接口说明文档中整理出接口测试案例(包括详细的入参和出参数据以及明确的格式和检查点)。
  • 和开发一起对评审接口测试案例
  • 结合开发库,准备接口测试案例中的入参数据和出参数据,并整理成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. linux 查看目录大小

    查看当前目录下各个目录大小容量 du -sh * du -sh /app/* du -h --max-depth=1 .

  2. 6、基本数据类型(list)

    6.1.列表: 1.li = [1, 12, 9, "age", ["孙子涵", ["19", 10], "张涵予"], ...

  3. 使用gitlab自带的ci/cd实现.net core应用程序的部署

    这两天在折腾持续集成和交付,公司考虑使用gitlab自带的ci/cd来处理,特此记下来整个流程步骤. 好记性不如一支烂笔头---尼古拉斯-古人言 第一步: 安装gitlab,这个自然不用多说 第二步: ...

  4. ollvm混淆的某apk题目的逆向分析

    打开jadx,就发现了我们的老朋友数字壳 典型的类抽取壳,直接上fart脱就完事了,我这里使用的是fart的frida脚本,省去了刷机的步骤 这里的脱壳脚本,自行去github的寒冰大佬那边clone ...

  5. Java实验项目二——打印某年某月日历

    Program:打印万年历(输入年份,月份,输出该月的日历,已知1900年1月1日是星期一), 要 求: (1)编写一个方法判断闰年: (2)编写一个方法判断某年某月有多少天: (3)编写一个方法计算 ...

  6. bugKu变量1

    重点:两个$$,这暗示着第二个$变量的值,作为第一个$的名称. 而且代码审计之后,发现只含有字母. 又暗示在变量中,那么猜想是在全局变量中,而php中全局变量是$GLOBALS.

  7. Android常用开源库(转)

    一 .基本控件 TextView HTextView 一款支持TextView文字动画效果的Android组件库. ScrollNumber 滚动数字控件 ticker 滚动数字控件 ReadMore ...

  8. Python 操作 MySQL 的5种方式

    不管你是做数据分析,还是网络爬虫,Web 开发.亦或是机器学习,你都离不开要和数据库打交道,而 MySQL 又是最流行的一种数据库,这篇文章介绍 Python 操作 MySQL 的5种方式,你可以在实 ...

  9. 短视频:用快影制作3D音乐视频

    用快影制作3D音乐视频1打开快影点击开始剪辑导入一张风景照片,按住照片向后拉到自己需要的时长2点击画中画,点击新增,画中画,导入一张照片3点击模板,选择圆形,调整圆形的大小,摆放到上面合适的位置,按照 ...

  10. PYTHON startswith (endswith类似)

    Python startswith()方法Python startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False.如果参数 beg 和 end ...