软件测试

性能测试

1.1.性能测试是什么

基于协议模拟用户发出请求,对服务器形成一定负载,来测试服务器的性能指标是否

满足要求

性能指标关注点:时间性能、空间性能

性能测试与页面无关

性能测试定义:指通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对

系统的各项性能指标进行测试。


性能测试类型

1.基准测试:在给系统施加较低压力时,查看系统的运行状况并记录相关数做为基

础参考

2.负载测试:是指对系统不断地增加压力或增加一定压力下的持续时间,直到系统

的某项或多项性能指标达到安全临界值,例如某种资源已经达到饱和状态等。

3.压力测试:压力测试是评估系统处于或超过预期负载时系统的运行情况,关注点

在于系统在峰值负载或超出最大载荷情况下的处理能力。

4.稳定性测试(可靠性测试):在给系统加载一定业务压力的情况下,使系统运行

一段时间,以此检测系统是否稳定。24X3小时

5.并发测试:测试多个用户同时访问同一个应用、同一个模块或者数据记录时是否

存在死锁或者其他性能问题,

性能测试工具


Jmeter简介

Jmeter的基本概念

ApacheJMeter是Apache组织开发的基于Java的压力测试工具。

2.2.我们为什么使用Jmeter

开源,免费,基于Java编写,可集成到其他系统可拓展各个功能插件

支持接口测试,压力(负载和压力)测试等多种功能,支持录制回放,

入门简单相较于自己编写框架活其他开源工具,有较为完善的UI界面,便于接口调试

多平台支持,可在Linux,Windows,Mac上运行

支持多协议

2.3.Jmeter的作用

1.接口测试

2.性能测试

3.压力测试

4.Web自动化测试

5.数据库测试

6.JAVA程序测试

2.4.Jmeter怎么用

Windows下Jmeter下载安装登录http://jmeter.apache.org/download_jmeter.cgi,根据自己平台,下载对应文件



安装JAVA环境

安装JDK,配置环境变量(具体步骤不做介绍)

将下载Jmeter文件解压,打开/bin/jmeter.bat



/bin目录(常用文件介绍)

examples:目录下包含Jmeter使用实例

ApacheJMeter.jar:JMeter源码包

jmeter.bat:windows下启动文件

jmeter.sh:Linux下启动文件

jmeter.log:Jmeter运行日志文件

jmeter.properties:Jmeter配置文件

jmeter-server.bat:windows下启动负载生成器服务文件

jmeter-server:Linux下启动负载生成器文件

/docs目录——Jmeter帮助文档

/extras目录——提供了对Ant的支持文件,可也用于持续集成

/lib目录——存放Jmeter依赖的jar包,同时安装插件也放于此目录

/licenses目录——软件许可文件,不用管

/printable_docs目录——Jmeter用户手册

使用Jmeter测试快速入门

线程组是什么

进程:一个正在执行的程序对应一个进程

线程:一个进程有多个执行线程

线程组:按照线程性质对线程分组

三者关系:一个进程有多个线程组,一个线程组有多个线程

测试计划—线程组—线程组属性中的线程数

并发执行:多个线程同时执行,特点:执行结束的顺序与开始的顺序不一致

顺序执行:按照线程的启动顺序挨个执行

默认情况下,线程组中的线程是并发执行

每一个线程都要执行组内的http请求

设置线程组顺序执行:勾选测试计划中的(独立运行每个线程组)

线程组用来模拟用户的并发访问

创建线程组

线程组主要包含三个参数:线程数、准备时长(Ramp-UpPeriod(inseconds))、

循环次数。

1.1.3.线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟

用户数在这里也就是设置多少个线程数。

1.1.4.准备时长(秒):设置的虚拟用户数需要多长时间全部启动。如果线程数

为20,准备时长为10,那么需要10秒钟启动20个线程。也就是每秒钟启动

2个线程。

1.1.5.循环次数:每个线程发送请求的次数。如果线程数为20,循环次数为100,

那么每个线程发送100次请求。总请求数为20*100=2000。如果勾选了“永远”,

那么所有线程会一直发送请求,一到选择停止运行脚本。

1.1.6..调度器:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选

循环次数为永远)

1.1.7.持续时间(秒):测试持续时间,会覆盖结束时间

1.1.8.启动延迟(秒):测试延迟启动时间,会覆盖启动时间

1.1.9.启动时间:测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测

试时当前时间也会覆盖它。

1.1.10.结束时间:测试结束时间,持续时间会覆盖它。

一个HTTP请求有着许多的配置参数,下面将详细介绍:

名称:本属性用于标识一个取样器,建议使用一个有意义的名称。

注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。

服务器名称或IP:HTTP请求发送的目标服务器名称或IP地址。

端口号:目标服务器的端口号。

方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、

DELETE等。

Contentencoding:内容的编码方式,默认值为iso8859

路径:目标URL路径(不包括服务器地址和端口)

测试计划

1.测试计划就是一个完整的场景

2.“独立运行每个线程组”:勾选以后所有的线程组都是顺序执行的了。一般不勾

选,让所有的线程组并发启动。

3.“函数测试模式”:勾选后会有详细的请求记录,消耗资源,影响客户端性能。

一般不勾选。

4.用户定义的变量:全局变量,测试计划上可以添加用户定义的变量。一般添加一

些系统常用的配置。如果测试过程中想切换环境,切换配置,一般不建议在测试计划上添加变量


(1)、threadgroup(线程组)

这个就是我们通常添加运行的线程。通俗的讲一个线程组,可以看做一个虚拟用

户组,线程组中的每个线程都可以理解为一个虚拟用户。

(2)、setupthreadgroup

一种特殊类型的ThreadGroup的,可用于执行预测试操作。这些线程的行为完全

像一个正常的线程组元件。不同的是,这些类型的线程执行测试前进行定期线程组的

执行;类似LoadRunner的init,测试开始时进行初始化的工作。

(3)、teardownthreadgroup

一种特殊类型的ThreadGroup的,可用于执行测试后动作。这些线程的行为完全

像一个正常的线程组元件。不同的是,这些类型的线程执行测试结束后执行定期的线

程组;类似LoadRunnner的end,测试结束时进行回收工作。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,445评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,889评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,047评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,760评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,745评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,638评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,011评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,669评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,923评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,655评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,740评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,406评论 4 320
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,995评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,961评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,023评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,483评论 2 342