性能测试-软件测试

第四章:性能测试

2020/3/30 20:06:00

性能测试的概念

  • 概念:是指通过性能测试工具模拟正常、峰值、异常负载状态下,对系统的各项性能指标进行测试的活动。
  • 目的:

1.验证系统性能是否满足预期的性能需求,包括系统的执行效率、稳定性、安全性、可靠性等。</br>
2.分析软件系统在各种负载下的运行状态,提高性能和效率。</br>
3.识别系统缺陷,寻找系统中可能存在的性能问题,定位系统瓶颈并解决问题。</br>
4.系统调优,探测系统设计与资源之间的最佳平衡,改善并优化系统的性能。</br>


性能测试的指标

  1. 响应时间:指系统对用户的请求做出响应所需要的时间,响应时间需要与用户的具体需求相结合。
  2. 吞吐量: 衡量的是系统服务器的处理能力;
  3. 并发用户量:同一时间请求和访问的用户的数量。
  4. TPS:(Transaction per Second)事务数/秒,指系统每秒能够处理的事务和交易的数量。 TPS = 并发用户数/平均响应时间;
  5. 点击率:每秒选服务器提交的Http请求数。它只是一个参考指标,帮助衡量服务器的性能。
  6. 资源利用率:包括CPU,内存,磁盘等;

性能测试的种类

  • 负载测试:通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足系统性能指标的情况下,系统所能承受的最大负载量;
  • 压力测试:逐步给系统增加压力,测试系统性能的变化,是系统某些资源达到饱和或系统崩溃的边缘,从而确定系统所能承受的最大压力;(系统达到极限)
  • 并发测试:通过模拟用户并发访问,测试多用户并发访问同一个应用、同一个模块或者记录是是否存在死锁或者其他性能问题;
  • 配置测试:调整软件系统的软硬件环境,测试各种环境对系统性能的影响,从而找到系统各项资源的最优分配原则;(配置测试不改变代码,只改变软硬件配置、配置性能更好的CPU、内存等)
  • 可靠性测试:给系统加载一定的业务压力,使其持续运行一段时间,测试系统在这种情况下是否能够稳定运行(Linux更稳定);
  • 容量测试:在一定的软硬件及网络环境下,测试系统所支持的最大用户数、最大存储量;(通常与数据库、系统资源有关,用于规划将来的需求增长时,对数据库和系统资源的优化)

性能测试的流程

1.分析性能测试的需求
  • 测试人员需要收集有关项目的各项资料,并与开发人员沟通。对整个项目有一定的了解,针对需要进行性能测试的部分进行分析,确定测试目标。
2.制定性能测试计划
  • 确定测试环境:包括物理环境、生存环境、测试团队可利用的工具和资源。
  • 确定性能测试验收标准:确定响应时间、吞吐量和系统资源利用总目标和限制。
  • 设计测试场景:对产品业务、用户使用场景进行设计,设计符合用户使用习惯的场景,准备出一个业务场景表,为编写测试脚本提供依据。
  • 准备测试数据:性能测试是模拟现实的使用场景,例如模拟用户高并发,则需要准备用户数量、工作时间、测试时间等数据。
3.设计测试用例
  • 根据测试场景准备测试用例。
4.编写性能测试脚本
  • 正确选择协议;
  • 根据工具的支持情况和测试人员熟悉程度选取脚本语言;
  • 编写测试脚本时,要遵循代码编写规范,保证代码的质量;
  • 做好脚本的维护管理工作;
5.测试执行及监控
  • 性能指标:本次性能测试需要测试的性能指标的变化;
  • 资源占用率与释放情况:资源的使用情况,性能测试停止后,各项资源是否能正常释放以供后续业务使用;
  • 警告信息:系统出现问题时会发出警告信息,要及时查看;
  • 日志检查:系统日志(操作系统,数据库等日志)。

性能测试所用的工具

1.LoadRunner

简介:

LoadRunner是一款适用于各种体系架构的性能测试工具,它能预测系统行为并优化系统性能,其工作原理是通过模拟多个用户(虚拟用户)并行工作的环境来对应用程序进行负载测试
  在进行负载测试时,LoadRunner能够使用最少的硬件资源为模拟出来的虚拟用户提供一致的,可重复并可度量的负载,在测试过程中监控用户想要的数据和参数。测试完成,LoadRunner可以自动生成分析报告,给用户提供软件产品所需要的的性能信息。

优点:

  • 广泛支持业界标准协议;
  • 支持多种平台开发的脚本;
  • 可创建真实的系统负载;
  • 具有强大的实时监控和数据采集功能;
  • 可以精确分析结果,定位软件问题;

组成:

  1. VuGen(Virtual User Generator):用来创建虚拟用户脚本的工具,因此被称为虚拟脚本生成器。  VuGen会监控虚拟用户进行的操作,并以代码的形式将操作记录下来,生成一个VBScript脚本文件。当执行该脚本文件时,可以自动执行上述操作。在录制期间,VuGen会监控虚拟用户的行为,为跟踪用户发到服务器的所有请求以及从服务器接收到的所有应答。
  2. Controller:用于创建和控制LoadRunner场景,场景负责定义每次测试中发生的场景,包括模拟的用户数、用户执行的操作以及要监控的性能指标等;
  3. Analysis:LoadRunner的数据分析工具,它可以收集性能测试中的各种数据,对其进行分析并生成图表和报告,供测试人员查看;
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,110评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,443评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,474评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,881评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,902评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,698评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,418评论 3 419
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,332评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,796评论 1 316
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,968评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,110评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,792评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,455评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,003评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,130评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,348评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,047评论 2 355

推荐阅读更多精彩内容