欢迎来到天天文库
浏览记录
ID:48065682
大小:1.02 MB
页数:295页
时间:2020-01-14
《软件测试教程(华为培训专用)第6章.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第六章系统测试6.1性能测试6.1.1性能测试的基本概念性能测试主要检验软件是否达到需求规格说明书中规定的各类性能指标,并满足一些性能相关的约束和限制条件。性能测试包括以下几个方面:评估系统的能力。测试中得到的负荷和响应时间等数据可以被用于验证所计划的模型的能力,并帮助做出决策。识别系统中的弱点。受控的负荷可以被增加到一个极端的水平并突破它,从而修复系统的瓶颈或薄弱的地方。系统调优。重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性能,检测软件中的问题。6.1.2性能测试方法基准法性能测试的基准大体有以下几方面:响应时间从应用系统发
2、出请求开始,到客户端接收到最后一个字节数据为止所消耗的时间。合理的响应时间取决于实际的用户需求。并发用户数一般是指同一时间段内访问系统的用户数量。吞吐量指单位时间内系统处理的客户请求数量。性能计数器描述服务器或操作系统性能的一些数据指标,比如Windows系统资源管理器。6.1.2性能测试执行分为三个阶段:1.计划阶段2.测试阶段3.分析阶段计划阶段定义目标并设置期望值收集系统和测试要求定义工作负载选择要收集的性能度量值标出要运行的测试并决定什么时候运行它们决定工具选项和生成负载编写测试计划,设计用户场景并创建测试脚本测试阶段做准备工作(如建
3、立测试服务器或布置其他设备)运行测试收集数据分析阶段分析结果改变系统以优化性能设计新的测试6.1.3性能测试案例分析一个数据库应用系统性能测试的具体应用目前有许多用于功能测试的自动化测试工具可供用户使用来节省测试时间、提高测试效率。结合现在比较流行的JMeter这一开源的自动化测试工具介绍一下数据库系统的性能测试。(1)系统介绍被测系统是一个分布式数据库系统Testbase。该数据库采用Oracle数据库,Testbase里包括三张表,这里仅取其中一张名为City的表来说明测试过程,表的创建语句如下:createtableCity(Count
4、ryvarchar(20)notnull,Namevarchar(20)notnull,Desvarchar(20)notnull)(2)测试目的测试Testbase数据库的查询性能。(3)测试工具的选择Jmeter。JMeter(4)测试步骤安装必要的JDBC驱动(数据生成可以使用工具DataFactory)准备好Jmeter测试工具建立测试计划配置与数据库的连接设置结果的查看方式用JMeter分析了Oracle数据库的查询性能图6.4配置数据库连接图6.5测试结果6.2压力测试(负载测试、并发测试)6.2.1压力测试的基本概念压力测试(S
5、tressTesting)是指模拟巨大的工作负荷,以查看系统在峰值使用情况下是否可以正常运行。压力测试是通过逐步增加系统负载来测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,以此来获得系统性能提供的最大服务级别的测试。压力测试方法具有如下特点:(1)压力测试是检查系统处于压力情况下的能力表现。比如,通过增加并发用户的数量,检测系统的服务能力和水平;通过增加文件记录数来检测数据处理的能力和水平等等。(2)压力测试一般通过模拟方法进行。通常在系统对内存和CPU利用率上进行模拟,以获得测量结果。如将压力的基准设定为:内存使用率达
6、到75%以上、CPU使用率达到75%以上,并在此观测系统响应时间、系统有无错误产生。除了对内存和CPU的使用率进行设定外,数据库的连接数量、数据库服务器的CPU利用率等等也都可以作为压力测试的依据。(3)压力测试一般用于测试系统的稳定性。如果一个系统能够在压力环境下稳定运行一段时间,那么该系统在普遍的运行环境下就应该可以达到令人满意的稳定程度。在压力测试中,通常会考察系统在压力下是否会出现错误等方面的问题。压力测试与性能测试的联系与区别:压力测试是用来保证产品发布后系统能否满足用户需求,关注的重点是系统整体;性能测试可以发生在各个测试阶段,即
7、使是在单元层,一个单独模块的性能也可以进行评估。压力测试是通过确定一个系统的瓶颈,来获得系统能提供的最大服务级别的测试。性能测试是检测系统在一定负荷下的表现,是正常能力的表现;而压力测试是极端情况下的系统能力的表现。例如对一个网站进行测试,模拟10到50个用户同时在线并观测系统表现,就是在进行常规性能测试;当用户增加到系统出项瓶颈时,如1000乃至上万个用户时,就变成了压力测试。压力测试和负载测试(LoadTest):负载测试是通过逐步增加系统工作量,测试系统能力的变化,并最终确定在满足功能指标的情况下,系统所能承受的最大工作量的测试。压力测
8、试实质上就是一种特定类型的负载测试。压力测试和并发性测试:并发性测试是一种测试手段,在压力测试中可以利用并发测试来进行压力测试。6.2.2压力测试方法压力测试应该尽
此文档下载收益归作者所有