性能测试之测试用例(方案篇)
如何编写性能测试场景用例(如何编写性能测试用例)
如何编写性能测试场景⽤例(如何编写性能测试⽤例)单场景前⾔写测试⽤例,是测试绕不开的⼯作内容,不管是功能、⾃动化,还是性能。
先来回顾⼀下功能测试⽤例主要包含的要素:测试⽤例编号、测试标题、所属模块、测试需求项编号、案例状态、预置条件、优先级、测试输⼊、操作步骤、预期输出、实际结果、案例设计者、设计⽇期、案例性质等。
性能测试⽤例(有的称为场景⽤例)的设计,有别于功能测试⽤例、⾃动化测试⽤例的设计,毕竟,考虑的点不⼀样。
对于性能测试来说,⼀般要考虑这4种场景:单场景、混合场景、稳定性场景、异常场景。
下⾯,结合笔者实际⼯作,分享下单场景的⽤例是如何设计的。
单场景的定义 有的称为接⼝基准(Benchmark)、或者单交易的容量,总之,这个不是真实的业务原型(可以简单理解为不同业务的使⽤情况)。
单场景压测的⽬的 既然单场景不是真实的业务原型,为什么不直接做混合场景的压测呢?其实,做单场景压测的⽬的是测试出这个单业务的最⼤tps,⽅便判断瓶颈,⽐如,业务部门给的混合场景的tps(假设这个tps值是合理有效的),根据业务原型⽐例计算后,业务A的⽬标tps都⽐你单场景的最⼤tps还要⼤,那是不是应该让开发提前优化了?如果在混合场景压测中,发现业务A的tps已经到达或者接近其单场景最⼤tps,但是混合场景还没有达标,那说明瓶颈在业务A。
单场景的来源 有⼈可能要问,单场景从哪⾥来?如果你们业务部门或者其它部门能给,那最好,如果不能给,你作为性能测试⼈员,要引导相关⼈员给,总之,我觉得这个不能性能测试单独定,否则后期出问题可能你独⾃背锅哦,要尽最⼤努⼒保证不出问题,哪怕出问题,也要⼀起背锅。
单场景是来⾃于业务原型,但是不是每个业务接⼝都需要做压测,所以,我们这⾥说的业务原型,是混合场景的业务原型,混合场景⾥⾯,每个业务接⼝都需要做单场景压测。
⾄于业务原型如何获取,这是⼀个⼤话题,本次分享暂不讨论,如果想交流,欢迎微信留⾔。
性能测试方案
性能测试⽅案1. 测试⽬的【内容】 本节说明本次提出需求的⽬的所在,希望能够达到的⽬标。
【裁剪原则】此部分内容不允许裁剪。
本测试报告为xxx系统的性能测试⽅案,⽬的是充分依据xxx系统建设实际,提供完整的⾼可⽤、⾼性能解决⽅案,建设⾼性能、⾼并发的集中式部署平台,并为项⽬的⾮功能需求(性能测试)进⾏了界定和细化,对今后软件测试⼈员、软件开发⼈员做出了引导作⽤。
2. 测试环境2.1 系统环境标准配置主机⽤途机型/OS数量CPU内存IP应⽤软件服务器Centosx虚拟机x台Intel(R) Xeon(R) Gold6161 CPU @ 2.20GHz64GB xx2.2 测试客户端配置主机⽤途机型/OS数量CPU内存浏览器版本IP⽤于性能测试的机器Win101Intel(R)Core(TM) i7-6500U CPU@2.50GHz 2.60GHz16G Google Chrome版本75动态IP3. 测试场景⽤例设计性能测试场景通常包括单业务基准测试、单业务压⼒测试、单业务负载测试、综合业务基准测试、综合业务压⼒测试、综合业务负载测试、综合业务稳定性测试等7种测试场景。
1. 单业务基准测试:测试某个具体业务是否满⾜系统设计或⽤户期望的性能指标。
⽐如⽤户期望⾸页查询⽀持300个⽤户并发查询,如果满⾜了,则认为基准测试完成,否则失败。
2. 单业务压⼒测试:测试某个具体业务在最⼤负载下,持续服务的时长,以此验证被测业务的稳定性。
压⼒测试过程中所涉及的负载,是以系统基准负载为标准,如系统基准负载为50个并发⽤户,则压⼒测试的负载设为50个,通过运⾏时长的变化,验证服务器在系统预设负载下持续服务的能⼒。
3. 单业务负载测试:测试某个具体业务能够承受的最⼤负载,验证被测业务能够承受的最⼤负载数,在最佳负载下,系统仍需满⾜各项性能指标。
4. 综合业务基准测试:与单业务基准测试类似,但综合业务需考虑业务与业务间的联系,如果相互之间存在资源争⽤,则需单独组合测试。
性能测试之测试用例(方案篇)
性能测试之测试用例(方案篇)性能测试在软件测试中占有重要的地位,而性能测试又关联很多容。
例如压力和强度测试就与性能测试密切相关:针对一个进行测试,模拟10到50个用户就是在进行常规性能测试,用户增加到1000乃至上万就变成了压力/负载测试,如果同时对系统进行大量的数据查询操作,就包含了强度测试。
为了便于性能测试工作的实施,这里的性能测试综合了性能、强度、压力、负载等多方面的测试容,主要包含的容有:预期性能指标测试、用户并发性能测试、疲劳强度测试、大数据量测试和速度测试、网络、服务器等方面的容。
性能测试不同的系统有不同的要求,编写方法要根据实际要求进行编写,本文提出一个常见的参考方案,在实际工作中,可以根据需要加入其它例如存泄露等和性能相关的测试用例。
下面介绍各个部分性能测试用例包含的容:1.1预期性能指标测试用例通常系统在设计前都会提出一些性能指标,这些指标是性能测试要完成的首要工作之一。
针对每个指标都要编写多个测试用例来验证是否达到要求,并根据测试结果来改进系统的性能。
这类通常以单用户为主,如果遇到并发用户的情况,可以归到并发用户测试用例中。
这类用例通常都是可以通过手工来执行的用例,例如示例中的上传一份文件,期望的性能为2M/S,完全可以手动上传文件,同时用秒表计时。
这些容通常在需求说明书中可以显而易见的查到。
不过当看到如支持并发用户300人,就应该放到后面进行。
测试结果也是直接记录是否达到要求,如果系统没有达到要求则进行改善。
1.2用户并发性能测试用例用户并发测试是性能测试的最主要部分,包含了负载测试和压力测试的过程。
主要是逐渐增加用户数量来加重系统负担,直到出现不能接收的性能点或者瓶颈。
一般要测试正常数量的用户并发和极限数量下用户并发的情况。
并发用户测试主要是对系统的核心功能和重要业务进行测试,要以真实的业务数据作为输入,选择有代表性和关键的业务操作来设计测试用例。
主要编写以下两个方面的用例:核心模块的测试(可以理解为“单元性能测试”):对核心功能模块进行并发用户测试,测试系统是否能够稳定运行。
软件测试用例实施方案
软件测试用例实施方案一、引言。
在软件开发过程中,软件测试是非常重要的一环。
软件测试用例是对软件进行测试的基本工具,它能够有效地帮助测试人员对软件进行全面、系统的测试。
因此,本文将介绍软件测试用例的实施方案,以帮助测试人员更好地进行测试工作。
二、测试用例设计。
1. 确定测试目标,在设计测试用例之前,首先需要明确测试的目标。
测试的目标可以包括功能测试、性能测试、安全测试等,需要根据具体的软件特点来确定。
2. 收集需求和规格,测试用例的设计需要基于软件的需求和规格,因此需要收集软件的需求文档和规格说明书,以便更好地理解软件的功能和特点。
3. 划分测试场景,根据软件的功能和特点,将测试用例划分为不同的测试场景,以确保对软件进行全面的测试覆盖。
4. 设计测试用例,在确定了测试目标、收集了需求和规格、划分了测试场景之后,就可以开始设计测试用例了。
测试用例需要覆盖软件的各个功能点,以确保软件的稳定性和可靠性。
三、测试用例执行。
1. 确定测试环境,在执行测试用例之前,需要确定测试的环境,包括硬件环境和软件环境。
测试环境的确定将对测试结果的准确性和可靠性产生重要影响。
2. 执行测试用例,根据设计的测试用例,测试人员需要按照测试计划依次执行测试用例,记录测试结果并及时反馈问题。
3. 缺陷管理,在执行测试用例的过程中,测试人员需要及时记录发现的缺陷,并将其及时报告给开发人员,以便开发人员及时修复。
四、测试用例管理。
1. 测试用例的维护,随着软件的不断迭代和更新,测试用例也需要不断进行维护和更新,以确保测试的有效性和全面性。
2. 测试用例的版本管理,测试用例需要进行版本管理,以确保测试用例的版本与软件的版本保持一致,避免因为版本不一致而导致的测试遗漏和错误。
3. 测试用例的归档和备份,已经执行过的测试用例需要进行归档和备份,以便后续查阅和使用。
五、总结。
软件测试用例的实施方案是软件测试工作中的重要一环,它能够有效地帮助测试人员对软件进行全面、系统的测试。
性能测试用例(转载)
性能测试⽤例(转载) ⼀、WEB 全⾯模型 Web 性能测试模型提出的主要依据是:⼀种类型的性能测试可以在某些条件下转化成为另外⼀种类型的性能测试,这些类型的性能测试的实施是有着相似之处的; 1. 预期指标的性能测试 系统在需求分析和设计阶段都会提出⼀些性能指标,完成这些指标的相关的测试是性能测试的⾸要之⼀,这些指标主要诸于“系统可以⽀持并发⽤户200个;”系统响应时间不得超过20秒等,对这种预先承诺的性能要求,需要⾸先进⾏测试验证; 2. 独⽴业务性能测试 独⽴业务实际是指⼀些核⼼业务模块对应的业务,这些模块通常具有功能⽐较复杂,使⽤⽐较频繁,属于核⼼业务等特点。
⽤户并发测试是核⼼业务模块的重点测试内容,并发的主要内容是指模拟⼀定数量的⽤户同时使⽤某⼀核⼼的相同或者不同的功能,并且持续⼀段时间。
对相同的功能进⾏并发测试分为两种类型,⼀类是在同⼀时刻进⾏完全⼀样的操作。
另外⼀类是在同⼀时刻使⽤完全⼀样的功能。
3. 组合业务性能测试 通常不会所有的⽤户只使⽤⼀个或者⼏个核⼼业务模块,⼀个应⽤系统的每个功能模块都可能被使⽤到;所以WEB性能测试既要模拟多⽤户的相同操作,⼜要模拟多⽤户的不同操作;组合业务性能测试是最接近⽤户实际使⽤情况的测试,也是性能测试的核⼼内容。
通常按照⽤户的实际使⽤⼈数⽐例来模拟各个模版的组合并发情况;组合性能测试是最能反映⽤户使⽤情况的测试往往和服务器性能测试结合起来,在通过⼯具模拟⽤户操作的同时,还通过测试⼯具的监控功能采集服务器的计数器信息进⽽全⾯分析系统瓶颈。
⽤户并发测试是组合业务性能测试的核⼼内容。
组合并发的突出特点是根据⽤户使⽤系统的情况分成不同的⽤户组进⾏并发,每组的⽤户⽐例要根据实际情况来匹配; 4. 疲劳强度性能测试 疲劳强度测试是指在系统稳定运⾏的情况下,以⼀定的负载压⼒来长时间运⾏系统的测试,其主要⽬的是确定系统长时间处理较⼤业务量时的性能,通过疲劳强度测试基本可以判定系统运⾏⼀段时间后是否稳定; 5. ⼤数据量性能测试 ⼀种是针对某些系统存储,传输,统计查询等业务进⾏⼤数据量时的性能测试,主要针对某些特殊的核⼼业务或者⽇常⽐较常⽤的组合业务的测试; 第⼆种是极限状态下的数据测试,主要是指系统数据量达到⼀定程度时,通过性能测试来评估系统的响应情况,测试的对象也是某些核⼼业务或者常⽤的组合业务。
性能测试用例
同预期
备注
样品编号 测试用例总数 序号 用例标识
模块名称
功能点
1
WW1
统一登录模 用户100并
块
发登录
2
WW2 ***平台 单用户3源自WW3****平台
用户100并 发
性能测试
性能测试用例
操作步骤
1.编写接口测试脚本; 2.对脚本进行调优(关联接口、请求参数参数化、设置思考时间1S、设置响应文本检查 点); 3.设置脚本执行场景,模拟100并发用户数执行“统一登录”业务操作,并根据测试结果 数据分析系统的性能状况 41..查编看写接接口口成测功试率脚、本响;应时间、吞吐量和系统资源消耗情况; 2.对脚本进行调优(关联接口、请求参数参数化、设置思考时间1S、设置响应文本检查 点); 3.设置脚本执行场景,模拟单用户执行“大数据分析平台”业务操作,并根据测试结果数 据分析系统的性能状况 4.查看接口成功率、响应时间、吞吐量和系统资源消耗情况; 1.编写接口测试脚本; 2.对脚本进行调优(关联接口、请求参数参数化、设置思考时间1S、设置响应文本检查 点); 3.设置脚本执行场景,模拟100并发用户数执行“大数据分析平台”业务操作,并根据测 试结果数据分析系统的性能状况 4.查看接口成功率、响应时间、吞吐量和系统资源消耗情况;
能测试用例
期望结果
实际结果 设计者
检查人
执行人
100用户并发进行“统一登录”操作,系统响应时间≤5S,峰值≤ 15S、接口失败率<5%。
同预期
单用户并发进行“大数据分析平台”业务操作,系统响应时间控制在 平均值≤2S、峰值≤15S、接口失败率<5%。
同预期
100用户并发进行“大数据分析平台”业务操作,系统响应时间控制 在平均值≤2S、峰值≤15S、接口失败率<5%。
测试性能方案
5.测试报告:总结测试结果,输出测试报告,包括测试覆盖率、缺陷统计、性能指标等。
6.测试回顾:分析测试过程中存在的问题,提出改进措施,为后续测试提供经验教训。
六、测试团队与职责
1.测试经理:负责整个测试项目的规划、组织、协调和监控。
1.评估信息系统在正常负载条件下的性能表现,包括响应时间、并发用户数、吞吐量等指标。
2.识别信息系统在极端负载条件下的性能瓶颈,为优化和改进提供依据。
3.验证信息系统在特定场景下的稳定性、可靠性和可扩展性。
4.确保信息系统满足国家相关法规和行业标准的要求。
三、测试范围
1.系统功能测试:覆盖信息系统的全部功能模块,确保功能的正确性和完整性。
-硬件资源:提供足够的硬件资源,以支持测试的顺利进行。
七、风险管理
1.风险识别:
-测试范围不全面,可能导致关键性能问题遗漏。
-测试环境与生产环境不一致,影响测试结果的准确性。
-性能测试数据不足,难以全面评估系统性能。
2.风险应对:
-定期回顾和更新测试计划,确保测试范围的完整性。
-建立严格的测试环境管理流程,保证环境的稳定性和一致性。
-重复测试,验证优化效果。
-输出详细的测试报告,包括测试总结、性能数据分析、优化建议等。
六、资源配置与团队协作
1.测试团队:
-测试经理:负责测试计划的制定和执行监督。
-性能测试工程师:执行具体的性能测试工作,分析测试结果。
-开发工程师:协助分析性能问题,实施代码优化。
2.环境资源:
-测试环境:确保测试环境的独立性和与生产环境的一致性。
2.性能测试:包括并发测试、压力测试、容量测试等,全面评估系统的性能表现。
性能测试之测试用例(方案篇)
性能测试之测试用例(方案篇)性能测试在软件测试中占有重要的地位,而性能测试又关联很多内容。
例如压力和强度测试就与性能测试密切相关:针对一个网站进行测试,模拟10到50个用户就是在进行常规性能测试,用户增加到1000乃至上万就变成了压力/负载测试,如果同时对系统进行大量的数据查询操作,就包含了强度测试。
为了便于性能测试工作的实施,这里的性能测试综合了性能、强度、压力、负载等多方面的测试内容,主要包含的内容有:预期性能指标测试、用户并发性能测试、疲劳强度测试、大数据量测试和速度测试、网络、服务器等方面的内容。
性能测试不同的系统有不同的要求,编写方法要根据实际要求进行编写,本文提出一个常见的参考方案,在实际工作中,可以根据需要加入其它例如内存泄露等和性能相关的测试用例。
下面介绍各个部分性能测试用例包含的内容:1.1预期性能指标测试用例通常系统在设计前都会提出一些性能指标,这些指标是性能测试要完成的首要工作之一。
针对每个指标都要编写多个测试用例来验证是否达到要求,并根据测试结果来改进系统的性能。
这类通常以单用户为主,如果遇到并发用户的情况,可以归到并发用户测试用例中。
这类用例通常都是可以通过手工来执行的用例,例如示例中的上传一份文件,期望的性能为2M/S,完全可以手动上传文件,同时用秒表计时。
这些内容通常在需求说明书中可以显而易见的查到。
不过当看到如支持并发用户300人,就应该放到后面进行。
测试结果也是直接记录是否达到要求,如果系统没有达到要求则进行改善。
1.2用户并发性能测试用例用户并发测试是性能测试的最主要部分,包含了负载测试和压力测试的过程。
主要是逐渐增加用户数量来加重系统负担,直到出现不能接收的性能点或者瓶颈。
一般要测试正常数量的用户并发和极限数量下用户并发的情况。
并发用户测试主要是对系统的核心功能和重要业务进行测试,要以真实的业务数据作为输入,选择有代表性和关键的业务操作来设计测试用例。
主要编写以下两个方面的用例:核心模块的测试(可以理解为“单元性能测试”):对核心功能模块进行并发用户测试,测试系统是否能够稳定运行。
测试用例之性能测试用例
测试用例之性能测试用例注:本文摘自作者正在编写的《Web性能测试实战》一书,曾经在程序员杂志2004年第10期上发表过。
性能测试、压力测试、负载测试、强度测试、稳定性测试、健壮性测试、功能测试、接口测试……,这么多眼花缭乱的测试类型名称,估计很少有人能准确的区分并说出定义来,至于对应的测试用例如何编写和执行,就更不用说了。
如果问测试工程师测试用例如何编写,就象是问程序员如何编写代码得到的答案一样,每个人都会给出不同的编写方法,但实用的测试用例却象优秀的程序一样难以编写。
目前国内,测试工程师却时常要面对“已经延期几倍计划时间的项目”,测试用例如何发挥更大的作用,是一个迫切需要解决的问题。
事实上,完全可以把测试用例看成是测试工程师编写的程序:这个“程序”是为了辅助测试工作的进行而开发的,目的是为了发现软件问题,同时“顺便”证明软件功能是否符合要求。
本文针对上面的问题,以设计性能测试用例为示范,讲解在企业实际工作中,如何有效划分测试种类和编写对应的测试用例,使测试工作更加合理、高效率的开展。
1测试种类和阶段1.1 测试种类对于测试种类的说法多种多样,最多的能达到30多种测试类型。
而实际工作中很多测试是互相包含的。
按照企业中实际工作需要,通常主要进行下面几种类型的测试:功能测试、健壮性测试、接口测试、强度测试、压力测试、性能测试、用户界面测试、可靠性测试、安装/反安装测试、文档测试。
下面介绍几种重要的测试种类及其测试的内容:功能测试:功能测试主要针对产品需求说明书的测试,是验证功能是否否合需求,包括原定功能的检验、是否有冗余功能、遗漏功能。
这类测试应由测试员做,这并不意味着程序员在发布前不必检查他们的代码能否工作,他们也需要进行基本功能的测试。
接口测试:程序员对各个模块进行系统联调的测试,包含程序内接口和程序外接口测试。
这个测试,在单元测试阶段进行了一部分工作,而大部分都是在集成测试阶段完成的。
由开发人员进行。
性能测试用例设计
性能测试⽤例设计性能测试⽤例的设计,有别于功能测试⽤例的设计,毕竟,考虑的点不⼀样。
在有了性能测试⽅案后,我们就可以设计我们的性能测试⽤例了,⼀般考虑:单场景、混合场景、稳定性场景下⾯给出笔者在实际⼯作中,单场景的⽤例(之前⽤loadrunner做压测的⽤例),供⼤家参考:⽤例编号:PT001场景描述:模拟⽤户进⾏登录操作并发量:分别模拟并发⽤户数为1000、1500、2000等多种情况进⾏测试(除了压测能否达到⽬标,还要压测出最⼤的并发和tps,参考:)压测时间:每次600s数据量:oracle数据库user表有100万存量账户脚本设置关键点:参数化⽤户名、封装登录事务、添加思考时间集合点:不使⽤加压减压⽅式:全部初始化爬坡加压、全部退出场景运⾏时设置:think time=1s、continue when error、log选择Send messages only when an error occurs重点关注指标:响应时间、tps,事务成功率,各个服务器资源使⽤情况(CPU、内存、磁盘I/O、磁盘容量)、⽹络、是否频繁fgc、是否线程阻塞、线程死锁、连接池未释放、数据库死锁、慢sql等等预期指标:并发>=1000,响应时间<=1s,tps>=600,事务成功率为99.5%(涉及资⾦的,要求100%),应⽤服务器、数据库服务器CPU和内存使⽤率<=90%,没有内存泄漏现象、没有死锁等各种性能问题。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21⽤例编号:PT001场景描述:模拟⽤户进⾏登录操作并发量:分别模拟并发⽤户数为1000、1500、2000等多种情况进⾏测试(除了压测能否达到⽬标,还要压测出最⼤的并发和tps,参考:https:///uncleyong/p/11543488.html)压测时间:每次600s数据量:oracle数据库user表有100万存量账户脚本设置关键点:参数化⽤户名、封装登录事务、添加思考时间集合点:不使⽤加压减压⽅式:全部初始化爬坡加压、全部退出场景运⾏时设置:think time=1s、continue when error、log选择Send messages only when an error occurs重点关注指标:响应时间、tps,事务成功率,各个服务器资源使⽤情况(CPU、内存、磁盘I/O、磁盘容量)、⽹络、是否频繁fgc、是否线程阻塞、线程死锁、连接池未释放、数据库死锁、慢sql等等预期指标:并发>=1000,响应时间<=1s,tps>=600,事务成功率为99.5%(涉及资⾦的,要求100%),应⽤服务器、数据库服务器CPU和内存使⽤率<=90%,没有内存泄漏现象、没有死锁等各种性能问题。
(完整版)性能测试方案-模板
xxx性能测试方案文档修改历史目录1.文档介绍 (3)1.1.测试目的 (3)1.2.读者对象 (3)1.3.参考资料 (3)1.4.术语与解释 (3)2.测试环境 (3)2.1.测试环境 (3)2.2.测试工具 (4)3.测试需求 (4)3.1.测试功能点 (4)3.2.性能需求 (4)4.准备工作 (5)5.测试完成准则 (5)6.测试风险 (6)7.测试设计策略 (6)7.1.关键资源不处于阻塞状态 (6)7.2.组合测试用例策略 (6)7.3.测试执行策略 (6)8.业务模型 (7)8.1.场景一 (7)8.2.场景二 (7)8.3.场景三 (8)9.测试报告输出 (8)1.文档介绍1.1.测试目的本次性能测试的目的是检测xxx系统的性能情况。
即:为了xxx系统上线后能够稳定运行,有必要在上线前对核心业务场景的压力情况有充分了解。
因此,希望在模拟生产环境的情况下,模拟上线后的用户并发数,对系统核心业务进行压力测试,收集相应的系统参数,并最终作为上线的依据。
编写本方案的目的是指导本次性能测试有序的进行,相关人员了解本次性能测试。
1.2.读者对象本方案的预期读者是:项目负责人、测试人员和其他相关人员。
1.3.参考资料1.4.术语与解释无2.测试环境模拟客户使用环境(最好模拟客户实际使用的配置环境)。
具体如下:2.1. 测试环境网络环境:Lan(100M)硬件环境:➢应用服务器数量:1台配置:型号、CPU、内存等➢数据库服务器数量:1台配置:型号、CPU、内存等➢测试客户端数量:2台配置:型号、CPU、内存等软件环境:➢操作系统:Windows Server 2008,Windows XP SP3➢应用服务软件:WebSphere,Tomcat5.5➢数据库:DB2,Oracle 10g2.2. 测试工具LoadRunner9.53.测试需求3.1. 测试功能点本次测试共涉及登录,新闻发布......模块。
(完整word版)性能测试用例模板
《软件性能测试用例》一奋斗网上购物商城性能测试用例文件状态:[] 草稿[] 初稿[V ]正式发布[] 正在修改文件标识: 完成日期:二O一一年五月文件修改版本控制更新状态:用字母表示。
C――创建,A ――增加,M ――修改,D ――删除目录第1部分概述 (4)1.1 编写目的 (4)1.2 读者对象 (4)1.3 项目背景 (4)1.4 测试目标 (4)1.5 参考资料.................................................... 错误!未定义书签。
第2部分测试配置要求 (5)2.1 网络环境 (5)2.1.1 网络硬件 (5)2.1.2 网络软件 (5)2.2 服务器环境 (5)2.2.1 服务器硬件 (5)2.2.1.1应用服务器硬件 (5)2.2.1.2数据库服务器硬件 (6)2.2.2 服务器软件 (6)2.2.2.1应用服务器硬软件 (6)2.2.2.2数据库服务器硬软件 (6)2.3 测试机环境 (6)2.3.1 测试机硬件 (6)2.3.2 测试机软件 (6)2.4 测试工具 (7)2.5 测试数据 (7)2.6 测试策略 (7)第3部分性能测试用例 (8)3.1 压力测试用例 (8)3.1.1 并发压力测试用例 (8)3.1.1.1登录系统 (8)第1部分概述1.1编写目的本方案描述了性能测试的测试环境、相关术语解释、测试用例的编码规则和性能测试用例等内容,本方案将用于指导软件测试人员进行性能测试。
1.2读者对象本方案的主要读者为软件开发项目管理者、软件工程师、系统维护工程师、测试工程师、客户代表。
1.3项目背景项目名称:奋斗网上购物商城系统项目简称:shopp ing 系统委托单位:济南奋斗公司开发单位:北京奋斗公司1.4测试目标通过性能测试,更早、更快地将软件系统中所存在的性能瓶颈找出来,并促进开发人员尽快地解决问题,最终向客户提供一个高质量的满足客户需求的软件产品。
性能测试用例
1. 如何写性能测试用例由于性能测试与功能测试有很大的区别,所以讨论出的结果可能与预先的设想有一定的区别。
性能测试的目的:为了验证系统是否达到用户提出的性能指标,同时发现系统中存在的性能瓶颈,起到优化系统的目的。
性能测试指标的来源:用户对各项指标提出的明确需求;如果用户没有提出性能指标则根据用户需求、测试设计人员的经验来设计各项测试指标。
(需求+经验)主要的性能指标:服务器的各项指标(CPU、内存占用率等)、后台数据库的各项指标、网络流量、响应时间。
BUG观点:1、性能测试就象人在无风情况下跑步(正常情况下的性能指标);2、压力测试就象人在微风中跑步(在正常的基础上加大多少百分比压力的性能指标);3、负载测试就象人在强风中跑步(不断加压,直到系统崩溃)。
HTTP观点:1、负载测试是正常情况下持续的加压;2、压力测试是直接加压达到一个极限值。
大家统一的观点:性能测试、压力测试、负载测试密不可分,可统称为性能测试。
性能测试要点:1、性能测试是在功能测试完成之后进行。
2、性能测试计划、方案一般与测试用例统一在一个文档里。
3、测试环境应尽量与用户环境保持一致。
4、性能测试一般使用测试工具和测试人员编制测试脚本来完成,性能测试的环境应单独运行尽量避免与其他软件同时使用。
5、性能测试的重点在于前期数据的设计与后期数据的分析。
6、性能测试的用例主要涉及到整个系统架构的问题,所以测试用例一旦生成,改动一般不大,所以做性能测试的重复使用率一般比较高。
(说明:当系统中出现的某个功能点需要修改,它一般只会影响到功能测试的设计用例,而对于性能测试,很少影响到性能测试的设计用例。
但是如果某个功能有较大的修改,性能测试也应该进行重新测试。
)2. Loadrunner性能测试一个实例(经典)随着测试越来越重要,其中的性能测试也受到越来越多的关注。
比较普遍的性能测试工具是Loadrunner7.51,但是很多人对此性能工具不是很熟悉。
性能测试测试方案
性能测试详细测试方案前言平台XX项目系统已经成功发布;依据项目的规划;未来势必会出现业务系统中信息大量增长的态势..随着业务系统在生产状态下日趋稳定、成熟;系统的性能问题也逐步成为了我们关注的焦点:每天大数据量的“冲击”;系统能稳定在什么样的性能水平;面临行业公司业务增加时;系统能否经受住“考验”;这些问题需要通过一个完整的性能测试来给出答案..1第一章XXX系统性能测试概述1.1被测系统定义XXX系统作为本次测试的被测系统注:以下所有针对被测系统地描述均为针对XXX系统进行的;XXX系统是由平台开发的一款物流应用软件;后台应用了Oracle11g数据库;该系统包括主要功能有:XXX等..在该系统中都存在多用户操作;大数据量操作以及日报、周报、年报的统计;在本次测试中;将针对这些多用户操作;大数据量的查询、统计功能进行如预期性能、用户并发、大数据量、疲劳强度和负载等方面的性能测试;检查并评估在模拟环境中;系统对负载的承受能力;在不同的用户连接情况下;系统的吞吐能力和响应能力;以及在预计的数据容量中;系统能够容忍的最大用户数..1.1.1功能简介主要功能上面已提到;由于本文档主要专注于性能在这里功能不再作为重点讲述..1.1.2性能测试指标本次测试是针对XXX系统进行的全面性能测试;主要需要获得如下的测试指标..1、应用系统的负载能力:即系统所能容忍的最大用户数量;也就是在正常的响应时间中;系统能够支持的最多的客户端的数量..2、应用系统的吞吐量:即在一次事务中网络内完成的数据量的总和;吞吐量指标反映的是服务器承受的压力..事务是用户某一步或几步操作的集合..3、应用系统的吞吐率:即应用系统在单位时间内完成的数据量;也就是在单位时间内;应用系统针对不同的负载压力;所能完成的数据量..4、TPS:每秒钟系统能够处理事务或交易的数量;它是衡量系统处理能力的重要指标..5、点击率:每秒钟用户向服务器提交的HTTP请求数..5、系统的响应能力:即在各种负载压力情况下;系统的响应时间;也就是从客户端请求发起;到服务器端应答返回所需要的时间;包括网络传输时间和服务器处理时间..6、应用系统的可靠性:即在连续工作时间状态下;系统能够正常运行的时间;即在连续工作时间段内没有出错信息..1.2系统结构及流程XXX系统在实际生产中的体系结构跟本次性能测试所采用的体系结构是一样的;交易流程也完全一致的..不过;由于硬件条件的限制;本次性能测试的硬件平台跟实际生产环境略有不同..1.2.1系统总体结构描述本系统的总体结构;包括:硬件组织体系结构、网络组织体系结构、软件组织体系结构和功能模块的组织体系结构..1.2.2功能模块本次性能测试中各类操作都是由若干功能模块组成的;每个功能都根据其执行特点分成了若干操作步骤;每个步骤就是一个功能点即功能模块;本次性能测试主要涉及的功能模块以及所属操作如下表1.2.3关键点描述KP本次性能测试的关键点;就是查看XXX系统在不同用户数量并发压力下的表现和大数据量操作时系统的性能状态;即:支持的并发用户数目和并发用户发送频率;以及在较大压力下;系统的处理能力以及CPU、数据库I/O和内存的使用情况;并找出相应的性能瓶颈..1.3性能测试环境本次性能测试环境与真实运行环境硬件和网络环境有所不同;是真实环境的缩小;数据库是真实环境数据库的一个复制或缩小;本系统采用标准的CS结构;客户端通过前台安装访问应用系统..其中具体的硬件和网络环境如下:中间件服务器:Weblogic9操作系统: Windows7/Linux网络环境: LAN10M数据库:Oracle 11g RAC客户端: PC Windows网络拓扑和结构图如下:2第二章性能测试从广泛意义上讲性能测试包括:预期性能测试、用户并发测试、大数据量测试、疲劳强度测试、负载能力测试等..在不同应用系统的性能测试中;需要根据应用系统的特点和测试目的的不同来选择具体的测试方案;本次XXX系统的性能测试主要是采用通常的压力测试模式来执行的;即:逐步增加压力;查看应用系统在各种压力状况下的性能表现..在本次性能测试中;将使用性能测试工具LoadRunner11.0对被测试项目的各模块进行监控;判断XX系统各模块的性能表现;并帮助项目人员分析系统各个操作的性能瓶颈点..2.1预期性能测试2.1.1预期性能概述通过模拟生产运行的业务压力量和使用场景组合;测试系统的性能是否满足生产性能要求..通俗地说;这种方法就是要在特定的运行条件下验证系统的能力状态..2.1.2测试特点1、主要目的是验证系统是否有系统宣称具有的能力..2、要事先了解被测试系统经典场景;并具有确定的性能目标..3、要求在已经确定的环境下运行..2.2.1并发测试概述并发测试方法通过模拟用户并发访问;测试多用户并发访问同一个应用、同一个模块或者数据记录时是否存在死锁或其者他性能问题..2.2.2测试目的1、主要目的是发现系统中可能隐藏的并发访问时的问题..2、主要关注系统可能存在的并发问题;例如系统中的内存泄漏、线程锁和资源争用方面的问题..3、可以在开发的各个阶段使用需要相关的测试工具的配合和支持..2.3大数据量测试2.3.1大数据量测试概述测试对象处理大量的数据;以确定是否达到了将使软件发生故障的极限..大数据量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量..2.3.2测试目的1、主要目的是确定软件发生故障的极限..2、确定测试对象在给定时间内能够持续处理的最大负载或工作量..3、可以在开发的各个阶段使用需要相关的测试工具的配合和支持..2.4.1疲劳强度测试概述即压力测试;测试系统在一定饱和状态下;例如cpu、内存在饱和使用情况下;系统能够处理的会话能力;以及系统是否会出现错误..2.4.2测试目的1、主要目的是检查系统处于压力性能下时;应用的表现..2、一般通过模拟负载等方法;使得系统的资源使用达到较高的水平..3、一般用于测试系统的稳定性..2.5负载能力测试2.5.1负载测试概述通过在被测系统上不断加压;直到性能指标达到极限;例如“响应时间”超过预定指标或都某种资源已经达到饱和状态..2.5.2测试目的1、主要目的是找到系统处理能力的极限..2、需要在给定的测试环境下进行;通常也需要考虑被测试系统的业务压力量和典型场景、使得测试结果具有业务上的意义..3、一般用来了解系统的性能容量;或是配合性能调优来使用..2.6测试方法及测试用例详情参见XX项目测试用例.doc的“性能测试”章节2.7测试指标及期望在本次性能测试中;各类测试指标包括测试中应该达到的某些性能指标;这些性能指标均是来自应用系统设计开发时遵循的业务需求;当某个测试的某一类指标已经超出了业务需求的要求范围;则测试已经达到目的;即可终止性能测试..2.7.1.1应用软件级别的测试指标:CPU的利用率小于40%内存占用小于80%Processor queue length 小于2Response time 小于 1s吞吐量throughtput大于90%业务执行的平均响应时间期望值:<15s不同并发用户数的状况下的记录上述值2.7.1.2网络级别的测试指标:吞吐量:单位时间内网络传输数据量冲突率:在以太网上监测到的每秒冲突数2.7.1.3操作系统级别的测试指标:进程/线程交换率:进程和线程之间每秒交换次数CPU利用率:即CPU占用率%系统CPU利用率:系统的CPU占用率%用户CPU利用率:用户模式下的CPU占用率%磁盘交换率:磁盘交换速率中断速率:CPU每秒处理的中断数2.7.1.4数据库级别的测试指标:数据库I/O的流量大小数据库锁资源的使用数量数据库的并发连接数:客户端的最大连接数2.7.2测试数据准备2.7.2.1案例数据:满负荷压力根据测试系统的硬件条件;选择满负荷的压力;在系统的资源使用基本维持在90%左右的状况下;测试天威宽带业务管理系统的处理能力..数据准备工作包括:测试数据库需具备与真实环境成一定比例或基本一致的数据2.7.3运行状况记录记录可扩展性测试中的测试结果及其系统的运行状况..除了记录测试指标以外;应该结合测试实时记录系统各个层次的资源和参数..主要包括:硬件环境资源服务器操作系统参数网络相关参数数据库相关参数:具体数据库参数有所不同;结合各个数据库独有的特点记录3第三章测试过程及结果描述3.1测试描述在测试数据准备完备以后;测试将进行..记录每次测试的结果数据;分析测试结果对系统进行全面评估..3.2测试场景示例:测试中;使用逐步加压的模式;测试运行场景安排如下:每隔2秒增加1个用户连接;最多增加到100个用户;查看并记录运行情况每隔2秒增加2个用户连接;最多增加到200个用户;查看并记录运行情况每隔2秒增加1个用户连接;最多增加到300个用户;查看并记录运行情况每隔3秒增加1个用户连接;最多增加到400个用户;查看并记录运行情况每个场景都包括:用户登录-业务操作-业务完成-退出系统;所有用例都按以上场景进行测试;由于pc性能限制;为了更准确模拟现场环境;将运行的所有脚本部署在LoadRunner终端上;主要目的就是检查在不同的压力的情况下;业务系统的性能表现..3.3测试结果标准测试结束标准一般依据以下原则:1.所有计划的测试已经完成;2.所有计划收集的性能数据已经获得;3.所有性能瓶颈得到改善并达到设计要求..执行每个场景时需要记录以下相应的数据1.APP服务器主机上的CPU利用率:2.在数据库Oracle服务器上主机上的CPU利用率:3.IO和CPU利用率对照表如下:4.APP服务器监控的网络流量:5.DB服务器上监控的网络流量:6.运行的并发用户数目:7.测试中完成各操作的平均响应时间:单位:秒8.测试中每秒的点击率如下:9.交易的吞吐率每秒处理数据量:4第四章测试报告在XXX系统的性能测试结束后;根据测试结果;将生成测试报告..对应的文档名称如下:XX项目性能测试报告。
性能测试要点及用例
目录一、性能测试要点及用例模板 (2)1、性能测试团队成员职责技能描述 (2)2、性能测试工具需求规划表 (3)3、性能测试环境调查表 (3)4、典型业务列表 (3)5、业务用例描述 (4)6、场景列表 (4)7、测试计划 (4)8、测试环境检查 (5)9、测试执行记录日志 (5)10、性能测试分析报告 (6)11、性能测试应用领域与测试方法的关联 (6)12、常用的性能测试过程 (7)13、并发测试主要关注的问题(常用的测试方法) (8)14、性能调优的标准过程示例图 (8)15、性能测试脚本录制时的协议类型 (9)16、不同应用领域的性能测试目标和性能目标 (10)17、Windows操作系统主要计数器 (10)18、Unix常用计数器 (12)一、性能测试要点及用例模板1、性能测试团队成员职责技能描述2、性能测试工具需求规划表3、性能测试环境调查表4、典型业务列表5、业务用例描述6、场景列表7、测试计划1.引言1.1编写目的2.参考文档3.测试目的4.测试范围4.1测试对象4.2需要测试的特性4.3无需测试的特性5.测试启动与结束准则5.1启动准则5.2结束准则6.测试方法6.1测试工具6.2测试设计6.3测试用例与测试场景7.测试类型7.1能力验证测试7.2容量规划测试7.3稳定性测试8.测试环境维护原则9.测试输出10.测试资源需求与时间计划8、测试环境检查9、测试执行记录日志10、性能测试分析报告1.测试背景2.测试目的3.测试概要描述3.1被测系统描述3.2测试时间3.3测试地点3.4测试人员3.5测试工具和环境3.6测试方案简介4.测试结果和结论4.1测试结论4.2测试结论的限制4.3对系统的建议5.原始数据和报告5.1测试执行记录5.2原始数据文件5.3测试工具生成的报告11、性能测试应用领域与测试方法的关联12、常用的性能测试过程13、并发测试主要关注的问题(常用的测试方法)14、性能调优的标准过程示例图15、性能测试脚本录制时的协议类型16、不同应用领域的性能测试目标和性能目标17、Windows操作系统主要计数器18、Unix常用计数器。
(完整版)性能测试和压力测试用例
测试(并发用户登录网站的时间)
测试项编号
JWXN-003
测试项描述
测试50个并发用户同时登陆网站的时间
前置条件
测试客户端要有足够的资源,用户都合法并存在,同时能够成功登陆教务网
用例序号输入/动作来自输出/响应能否正常运行
001
采用LOADRUNNER录制任务,然后开始对系统加压;
任务2,持续时间10分钟,用户数量为50个
前置条件
用户合法并存在,同时能够成功登陆教务网
用例序号
输入/动作
输出/响应
能否正常运行
001
1.输入<地址>,打开教务网的登陆首页
2.输入用户名
3.输入密码
4.点击登陆
5.点击首页中的其中一条通知
6.点击的同时开始计时
点击通知以后页面成功打开,
同时页面打开所要的时间小于1S
能正常运行
测试(并发用户登录网站的时间)
001
采用LOADRUNNER录制任务,然后开始对系统加压;
任务4,持续时间20分钟,用户数量为100个
100个并发用户登录网站的时间<60s
能正常运行
测试项编号
JWXN-002
测试项描述
测试25个并发用户同时登陆网站的时间
前置条件
测试客户端要有足够的资源,用户都合法并存在,同时能够成功登陆教务网
用例序号
输入/动作
输出/响应
能否正常运行
001
采用LOADRUNNER录制任务,然后开始对系统加压;
任务1持续时间5分钟,用户数量为25个
100个并发用户登录网站的时间<60s
100个并发用户登录网站的时间<60s
第14讲 性能测试常用的测试用例
性能测试常用的测试用例性能测试常用的测试用例分基本性能测试用例和高级性能测试用例。
1.基本性能常用的测试用例基本性能测试常用的测试用例可分为:安全可靠性测试、资源占用率测试、资源占用率测试、兼容性测试、易用性测试、易用性测试、用户文档测试、用户文档测试、效率测试、效率测试、可扩充性测试。
测试用例(2)资源占用率测试常用的测试用例测试用例测试用例测试用例(6)效率测试常用的测试用例测试用例服务程序的测试1) 系统是否限制服务器程序启动的数量,如不限制,同一范围内启动多个服务是否对系统有影响测试用例:2) 服务程序能否正常运行3) 外界异常后,服务程序的自动恢复能力测试用例:4) 在点击关闭按钮时是否有确认提示5) 应用程序与其他程序是否兼容。
测试用例:6)对执行于非标准环境中应用程序的错误报告7)多用户环境下提供应用程序管理系统管理(参数设置)的测试1) 参数设置后,能否正确的进行应用2) 设置错误参数,系统的容错能力3) 修改参数,对与之相关模块的影响4) 系统是否有默认的参数,A 有:默认的参数是否起到作用;B 没有:不设置,系统能否运行或者给出提示。
2.高级性能常用的测试用例高级性能常用的测试用例主要内容包括:并发性能、系统资源监控、大数据量、速度、疲劳等项内容,重点是并发性能测试。
(1)并发性能并发测试的过程,是一个负载测试和压力测试的过程。
即逐渐增加负载,直到系统的瓶颈或者不能接收的性能点,通过综合分析交易执行指标和资源监控指标来确定系统并发性能的过程。
并发性能测试及系统资源监控使用自动化负载测试工具及监控工具。
测试案例:例如:中间件应能满足一定数量的前台客户端同时办公的需要。
测试内容与监控指标:★负载压力测试;★模拟不同数量并发用户测试。
模拟不同数量并发用户执行关键业务,测试至系统能够承受的最大并发用户数。
主要监控指标如下:● 每分钟事务处理数(Transaction Rate):不同负载下每分钟成功完成的事务处理数;● 响应时间(Response Time):服务器对每个应用请求的处理时间,单位:秒,该项指标反映了系统事务处理的性能,具体包括以下几项参数:- Min:最小的服务器响应时间;- Mean:平均的服务器响应时间;- Max:最大的服务器响应时间;- StdDev:事务处理服务器响应的偏差,值越大,偏差越大;- Median:中值响应时间;- 90%:90%事务处理的服务器响应时间- 虚拟并发用户数(Total Virtual Users):测试工具模拟的用户并发数量。
性能测试用例模版(示例)
并发用户:100;
测试时间:7x24小时
存量数据:用户注册数100万
集合点:有;
事务/检查点:启用;
思考时间:无;
错误处理:发生错误继续执行;
服务器资源:
CPU利用率小于全部的80%;
内存使用率小于全部的
80%;
网络传输长时间小于上限的80%;
磁盘采用Raid卡缓存,
内存使用率小于全部的
80%;
网络传输长时间小于上限的80%;
磁盘采用Raid卡缓存,
读写在合理范围内;
性能指标:
响应时间:3秒以内;
事务成功率:100%;
TPS:小于并发用户数;
网络吞吐率:小于峰值;
应用服务器:正常
数据库服务器:正常
3.
用例编号
功能模块
业务描述
操作步骤
测试策略
预期结果
备注
008
浏览首页/二级页/注册/登录功能
服务器资源:
CPU利用率小于全部的80%;
内存使用率小于全部的
80%;
网络传输长时间小于上限的80%;
磁盘采用Raid卡缓存,
读写在合理范围内;
性能指标:
响应时间:1秒以内;
事务成功率:100%;
TPS:小于并发用户数;
网络吞吐率:小于峰值;
应用服务器:正常
数据库服务器:正常
用例编号
功能模块
业务描述
用例编号
功能模块
业务描述
操作步骤
测试策略
预期结果
备注
007
浏览首页/二级页/注册/登录功能
用户浏览首页/二级页/注册/登录混合模式操作
电梯功能的测试用例和测试方案
电梯功能的测试⽤例和测试⽅案⼀、如果给你⼀台电梯,请问你如何测试它,分析如下1.功能:上升、下降、停⽌、开门、关门、梯内电话、灯光、指⽰灯等;2.性能:速度、反应时间、关门时间等;3.压⼒:超载、尖锐物碰撞电梯壁等;4.安全:停电、报警装置、轿箱停靠位置、有⼈扒门时的情况等;5.可⽤性:按键⾼度、操作是否⽅便、舒适程度等;6.UI:美观程度、光滑程度、形状、质感等;7.稳定性:长时间运⾏情况等;8.兼容性:不同电压是否可⼯作、不同类型电话是否可安装等。
⼆、下⾯是详细的测试点:需求测试:查看电梯使⽤说明书、安全说明书等。
界⾯测试:查看电梯的外观,电梯的按钮是否好⽤(开和关按钮设计的图标不容易区分),电梯的说明书是否有错别字。
功能测试:1.上升键和下降键,测试电梯能否实现正常的上升和下降功能。
2.电梯的按钮是否都可以使⽤。
3.电梯门的打开,关闭是否正常。
4.报警装置是否安装可⽤,报警电话是否可⽤。
5.与其他电梯之间是否协作良好。
6.通风状况如何,是否有⼿机信号。
7.突然停电时的情况。
8.上升途中、下降途中的响应。
1)电梯本来在1楼,如果有⼈按15楼,那么电梯在上升到5楼的时候,有⼈按了10楼,电梯会不会停;2)电梯下降到10层时显⽰满员,此时若5层有⼈等待电梯,此时还会不会停。
可靠性:1.门关上的⼀刹那出现障碍物。
2.同时按关门和开门按钮。
3.点击当前楼层号码4.多次点击同⼀楼层号码5.同时按上键和下键易⽤性:电梯的按钮的设计是否符合⼈的使⽤习惯⽤户⽂档:使⽤⼿册是否对电梯的⽤法、限制、使⽤条件等有详细的描述压⼒测试:1.看电梯的最⼤承重量,在电梯超重时报警装置是否启⽤2.在⼀定时间内不断让电梯上升、下降稳定性测试:看电梯在最⼤负载下平稳运⾏的最长时间。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
性能测试之测试用例(方案篇)
性能测试在软件测试中占有重要的地位,而性能测试又关联很多内容。
例如压力和强度测试就与性能测试密切相关:针对一个网站进行测试,模拟10到50个用户就是在进行常规性能测试,用户增加到1000乃至上万就变成了压力/负载测试,如果同时对系统进行大量的数据查询操作,就包含了强度测试。
为了便于性能测试工作的实施,这里的性能测试综合了性能、强度、压力、负载等多方面的测试内容,主要包含的内容有:预期性能指标测试、用户并发性能测试、疲劳强度测试、大数据量测试和速度测试、网络、服务器等方面的内容。
性能测试不同的系统有不同的要求,编写方法要根据实际要求进行编写,本文提出一个常见的参考方案,在实际工作中,可以根据需要加入其它例如内存泄露等和性能相关的测试用例。
下面介绍各个部分性能测试用例包含的内容:
1.1预期性能指标测试用例
通常系统在设计前都会提出一些性能指标,这些指标是性能测试要完成的首要工作之一。
针对每个指标都要编写多个测试用例来验证是否达到要求,并根据测试结果来改进系统的性能。
这类通常以单用户为主,如果遇到并发用户的情况,可以归到并发用户测试
用例中。
这类用例通常都是可以通过手工来执行的用例,例如示例中的上传一份文件,期望的性能为2M/S,完全可以手动上传文件,同时用秒表计时。
这些内容通常在需求说明书中可以显而易见的查到。
不过当看到如支持并发用户300人,就应该放到后面进行。
测试结果也是直接记录是否达到要求,如果系统没有达到要求则进行改善。
1.2用户并发性能测试用例
用户并发测试是性能测试的最主要部分,包含了负载测试和压力测试的过程。
主要是逐渐增加用户数量来加重系统负担,直到出现不能接收的性能点或者瓶颈。
一般要测试正常数量的用户并发和极限数量下用户并发的情况。
并发用户测试主要是对系统的核心功能和重要业务进行测试,要以真实的业务数据作为输入,选择有代表性和关键的业务操作来设计测试用例。
主要编写以下两个方面的用例:
核心模块的测试(可以理解为“单元性能测试”):对核心功能模块进行并发用户测试,测试系统是否能够稳定运行。
例如对于互联网的公用邮件系统,每天早上9点左右可能是收发邮件的高峰,这时候上千的用户都要在上班后进入邮件系统,系统这个时候需要接收和发送大量的邮件。
所以邮件系统这一功能模块要进行并发测试。
通过测试可以知道数据库服务器、操作系统、网络设备等是否能够承受住考验,同时可以对瓶颈进行分析。
表2列出来一些常见的参数(表格中的数据为示例的测试用例和测试结果),可以根据实际需要进行增加和删除,其中磁盘I/O、数据库相关测试参数要根据实际情况进行选择,因此没有列出。
表2 核心模块的性能测试用例
在编写这类用例时,要进行综合分析,选出系统中的各个核心模块,分别设计每个模块的测试用例:把模块划分成小的“事务”进行测试,这样在测试分析中便于定位问题究竟出现在哪里。
例如邮件系统可以划分成:接收邮件、发送邮件、打开邮件等小的事务进行测试用例的编写,每个操作做为一个用例来执行。
业务组合性能测试(可以理解为“集成性能测试”):所有的用户不会只使用核心模块,通常每个功能都可能被使用到,所有既要模拟多用户的“相同”操作,又要模拟多用户的不同操作,对多个业务进行组合性能测试。
业务组合测试是更接近用户实际操作系统的测试,因此用例编写要充分考虑实际情况,选择最接近实际的场景进行设计。
这里的业务组成单位以不同模块中的“子操作事务”为单位,进行各个模块的不同业务的组合。
例如在办公自动化系统中就可以选择“公文模块中的发送公文、电子公告模块中的查看公告信息、网上论坛模块中的上传文件”等事务作为一组组合业务进行测试,用例设计信息如下:
功能:在线用户达到高峰时,用户可以正常使用系统,保证500个以内用户可以同时在线使用系统。
目的:测试系统500个以内的用户同时在线能否使用比较常见的模块:公文系统、电子公告、网上论坛。
方法:采用LoadRunner的录制工具录制三个业务:
业务1——在公文系统内,进行打开、修改等操作;
业务2——在电子公告系统内,查看、发布公告;
业务3——在网上论坛系统内发布帖子,查看文章。
每个业务分配一定数目的用户,利用LoadRunner来完成相关参数的
测试。
其它部分设计可以参考表2。
执行时要分别记录各个事务的执行情况。
多用户并发性能测试是性能测试的核心内容,包含了全部与多用户相关的测试。
因此设计时要全面考虑,不要有遗漏。
在测试执行时,本部分通常是采用性能测试工具例如LoadRunner来进行测试的,因此更容易执行和提高效率。
1.3疲劳强度与大数据量测试
疲劳强度测试是在系统稳定运行下模拟最大用户数量、并长时间运行系统,通过综合分析执行指标和资源监控来确定系统处理最大业务量时的性能。
疲劳强度测试的目的就是检验系统长时间运行后的性能,因此设计用例时,需要编写不同参数或者负载条件下的多个测试用例,对服务器、软件、网络进行不同条件下的综合测试分析,测试时要记录系统发生故障的信息作为测试结果。
疲劳强度测试也是采用测试工具进行的。
大数据量测试分为两种:一个是针对某些系统存储、传输、统计查询等业务进行大数据量的测试;另一个是与前面并发测试相结合的综合数据测试。
编写用例时主要编写前一部分,后一部分尽量放在并发测试中。
大数据量测试一般是针对那些对数据库有特殊要求的系统进行测试,例如电信业务系统的手机短信息表,由于有的用户关机或者不在服务区,每秒钟需要有
大量的短信息保存,同时在用户联机后还要及时发送,因此对数据库性能有极高的要求,需要专门测试。
本部分用例设计表格可以参考用户并发性能测试部分。
1.4网络性能测试
网络性能测试主要是为了准确展示带宽、延迟、负载和端口的变化是如何影响用户的响应时间的。
在实际的软件项目中,主要是测试用户数目与网络带宽的关系。
编写用例的格式如表3 (表格中的数据为示例数据):
<TD style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; BACKGROUND: silver; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 135。