性能测试策略(性能测试分析与调优)

来源网友投稿 716 2023-02-21

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。
本篇文章给大家谈谈性能测试策略,以及性能测试分析与调优对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享性能测试策略的知识,其中也会对性能测试分析与调优进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

soapUI LoadTest 性能测试的多种策略

性能测试

性能测试在 soapUI 中称为 Load Test, 针对一个 soapUI 的 TestCase, 可以建立一个或多个 LoadTest,

这些 LoadTest 会自动的把 TestCase 中的所有步骤都添加到其中, 在运行的时候,soapUI 会自动的使用多个线程来运行这些

TestStep,同时也会监控它们的运行时间, 例如最短时间,最长时间,平均时间等等。这样用户能够很直观的看到 REST

服务的响应时间,从而对性能进行调优。

建立 LoadTest 非常简单,只需要在“Load Tests”上点击右键, 选择"New LoadTest",

然后输入名称即可,下图是一个针对 GetBookList 的性能测试, 可以看到有两个 TestStep : "GetBookList_xml"

和"GetBookList_json" , 100 个线程并发执行, 时间限制是 60 秒。最后的结果是,最短时间 4 毫秒,最长时间

1204 毫秒,平均时间 20.54 毫秒。

图 8. 性能测试

性能测试还支持断言,用户可以对一个 TestStep 或 TestCase 设置运行时间要求,例如平均时间大于 2 秒就认为失败,点击 图 8 中 中的“LoadTest Assertions”就可以设置。 当然根据需要,用户也可以编写脚本来做一些准备工作,或者清除工作。 参见 图 8 中 的"Setup Script"和“TearDown Script”。

可用不同的加载策略soapUI和soapUI

Pro可以模拟各种类型的负载随着时间的推移,使您轻松地测试的性能在许多条件下目标服务。从soapUI还允许您同时运行多个LoadTests(见一个例子进一步下降),结合LoadTests可以用来进一步维护服务的行为。选择所需的战略LoadTest从策略在LoadTest窗口工具栏:
我们看看可用不同的加载策略,看看他们可以用来做不同类型的负载和性能测试。

1。简单的策略——基线,负载和浸泡测试

简单的策略运行指定的线程数与指定的各运行模拟之间的延迟对服务器的“呼吸空间”。例如如果你想运行功能测试与10秒延迟10个线程,线程设置为10,推迟到10000年,随机延迟的多少你想随机化(即设置0.5将导致延误5至10秒)。当创建一个新的LoadTest这是默认策略和设置在一个相对较低的负载与1000毫秒的延迟(5个线程)。
简单的基准测试的策略是完美的。用它来维护您的服务的基本性能和验证没有线程或资源锁定问题。增加线程的数量,当你想要做更复杂的负载测试或使用长期浸泡测试策略。

因为它并不意味着把你的服务他们的膝盖,这样的设置可以用于连续负载测试,以确保您的服务执行如预期温和负荷;建立一个基线测试,没有延迟的随机化,添加LoadTest断言作为安全网,意想不到的结果和自动执行命令行LoadTest跑步者或maven插件。

2。固定利率策略——简单

简单的策略不做的一件事就是保证在一定时间内执行,例如,如果你想开始你的TestCase

10倍每秒钟执行不管需要多长时间。使用简单的策略可以设置10个线程和延迟补偿的平均差距TestCase的结束和下一秒的开始,但这将是非常不可靠。应该使用固定利率策略相反,根据需要设置率(10)在我们的例子中,你走;策略将自动开始为这个设置所需数量的线程试图维护配置的值。
暗示的标题,这里有一些曲折:如果我们的TestCase执行时间超过1秒?维护配置的TPS价值,内部战略将启动新的线程来弥补,一段时间后,你可能会有许多超过10个线程运行由于原始的没有完成组内。而不是令人惊讶的是这可能导致目标服务变得更慢,导致越来越多的线程被开始与配置的TPS“跟上”的价值。正如你可能猜到“马克斯线程”设置是她阻止soapUI重载(本身和目标服务)在这种情况下,指定一个值将限制线程的最大数量的soapUI将被允许开始维护配置的TPS,如果达到现有的线程必须完成之前soapUI将任何新的开始。

“请求水平”设置将试图维持TPS不是TestCase而是请求的执行水平,例如,如果你有一个数据驱动的LoadTest或者TestCase和许多请求,您希望TPS设置应用而非整个TestCase的执行水平的要求水平。

在任何情况下,固定利率策略用于基线,负载和soak-testing如果你不遇到上述“线程拥堵”问题。另一方面,你可能会引起交通拥堵(甚至结合另一个LoadTest)看到你的服务如何处理这个或拥塞处理后如何恢复。

3所示。可变负荷策略

有几个策略,可用于不同负载(线程)的数量随着时间的推移,每个模拟一种不同的行为。他们可以为恢复和压力测试是有用的,但是,正如对基线测试,结合自己或与其他策略。让我们来快速浏览:

方差策略——这不同线程的数量随着时间的“锯齿”庄园配置;间隔设置为所需的值和方差的线程的数量应该减少和增加多少。例如如果我们从20线程,设置间隔60和方差0.8,线程的数量将从20增加到36在第一15秒,然后减少回20,继续到4线程45秒后,最后返回到初始值后60秒。在统计图中我们很容易遵循这个方差:

2. 破裂的策略——这种策略是专门为恢复测试和方差推向了极端,它并没有配置延迟,然后运行的配置数量的线程“破裂时间”和回到睡眠。这里你可以(而且应该)的线程数量设置为高价值(20 +)来模拟冲击的交通在短时间间隔内,然后用一个标准衡量系统的恢复基线LoadTest包含基本绩效断言。让我们试试这个破裂延迟和60秒10秒的持续时间;
在这里可以看到的活动图,也请注意,该决议已经改为250 ms(从默认的“数据”值),否则我们没有任何图更新在“睡眠”时期的执行(因为没有收集数据)。

3.线程可以线性策略改变从一个水平到另一个线程的数量/

LoadTest的运行。它的主要功能是作为一种手段来确定某些统计数据变化或事件发生时的水平,例如找到ThreadCount的最大的TPSBPS可以实现或发现ThreadCount功能测试的错误开始发生。设置开始和结束线程值(例如5

- 50)并设置持续时间相对较长时间(我每个线程使用至少30秒值,在本例中,将1350秒)获得准确的测量数据(更多内容见下文)。
4.网格策略——这种策略允许专门配置的相对变化的线程数量随着时间的推移,其主要用途是更高级的场景和恢复测试,你需要看到在不同负载下的服务行为和负载变化。比如让你想要运行的60秒10,20,10,40岁,10个线程。配置您的LoadTest开始10个线程然后网格中的输入以下值
两个值存储相对于时间和实际ThreadCount LoadTest;如果你改变这些,相应的网格战略价值将重新计算。运行测试显示以下输出:
5.脚本战略——脚本是终极定制可能性;您所指定的脚本叫做定期(“间隔”战略LoadTest选项对话框中设置),应该返回所需的当前时间的线程数量。返回一个值而不是当前将启动或停止线程调整改变。这允许任何类型的方差的线程的数量,例如下面的脚本随机排列5和15之间的线程的数量
运行这个策略的时间间隔设置为5000线程的数量会改变每5秒:
这里的可能性是无限的。

4所示。统计计算和ThreadCount的变化

这些策略将会改变许多线程的数量有重要影响的统计计算,你需要意识到,当线程的数量发生变化时,这通常会改变目标服务的响应时间,导致改变avg,tps等等。但自从LoadTest已经运行在以前的结果对于那些运行的线程数量将为新ThreadCount倾斜的结果。

比如让你5线程和有平均500 ms。使用线程策略你线程的数量逐渐增加,当运行6线程的平均增加到600

ms但由于收集的“老”值5线程仍然存在,这些总共将导致较低的平均水平。有两种简单的方法解决,选择“重置统计ThreadCount变化”的价值LoadTest选项对话框,或手动重置统计与相应LoadTest工具栏按钮;在这两种情况下旧的数据将被丢弃。看到这个行动让做一个ThreadCount策略从10到20线程测试超过300秒(30秒每个线程),下面你将看到的结果都与这个设置未检查,然后检查;
在后一种你看到“跳跃”统计每次重启时线程的数量变化,逐渐平一个新值。最后TPS计算在20线程不同这两个之间的约10%,显示较低的“影响”更高的结果。

5。同时运行多个LoadTests

好,让我们有一个快速浏览,我们将创建一个基线测试简单的策略和低数量的线程,同时运行一个破裂策略如何基线测试性能“复苏”后,破裂;

在这里你可以看到简单的策略(底部图)逐渐恢复后的负载。
6。最后的话

希望你得到一个很好的概述soapUI的不同策略和他们如何可以用来模拟不同场景和类型的负载。正如你可能已经注意到,soapUI更关注于“行为”LoadTesting(了解您的服务处理程序不同的加载)而不是具体的数字,这是无论如何难以计算因为有太多的外界因素影响。

性能测试的指标

包括负载测试性能测试策略,强度测试性能测试策略,数据库容量测试,基准测试以及竞争测试。
负载测试,一种性能测试指数据在超负荷环境中运行,程序是否能够承担。在这种测试中,将使测试对象承担不同性能测试策略的工作量,以评测和评估测试对象在不同工作量条件下性能测试策略的性能行为,以及持续正常运行的能力。
对计算机软件进行测试前,首先需遵循软件测试原则,即不完全原则的遵守。不完全原则即为若测试不完全、测试过程中涉及免疫性原则的部分较多,可对软件测试起到一定帮助。
因软件测试因此类因素具有一定程度的免疫性,测试人员能够完成的测试内容与其免疫性成正比,若想使软件测试更为流畅、测试效果更为有效,首先需遵循此类原则,将此类原则贯穿整个开发流程,不断进行测试,而并非一次性全程测试。

常见的测试策略及方法—系统测试

系统测试是将经过集成测试后的软件,作为计算机系统的一个部分,与计算机硬件、某些支持软件、数据和人员等系统元素结合起来,在实际运行环境下对计算机系统进行一系列的严格有效的测试来发现软件的潜在问题,保证系统的运行。

1、压力测试:在一种需要反常数量、频率或资源的方式下,执行可重复的负载测试,以检查程序对异常情况的抵抗能力,找出性能瓶颈。包括:测试压力估算、测试环境准备、问题分析、累积效应;

2、容量测试:软件系统应用特征的某项指标极限值;

3、性能测试

4、安全测试:应用程序级别和系统级别;

5、容错测试:检查软件在异常条件下自身是否具有防护性的措施或者某种灾难性恢复的手段,包括:故障转移与数据恢复、测试目标、测试范围、完成标准、需考虑的特殊事项、容错能力/恢复能力测试用例;

6、可靠性测试:产品在规定的条件下和规定的时间内完成规定功能的能力;

回归测试的目的:在程序有修改的情况下保证原有功能正常的一种测试策略和方法;

回归测试的方法:全部测试用例、基于风险的选择测试、基于操作剖面选择测试、再测试修改的部分;

回归测试的组织和实施

1、识别软件被修改的部分;

2、在原测试用例库中,筛选不再适用的用例,新建新的用例库并补充完善;

性能测试基础概念1

性能测试针对系统的性能指标,建立性能测试模型,制定性能测试方案,制定监控策略,在场景条件之下执行性能场景,分析判断性能瓶颈并调优,最终得出性能结果来评估系统的性能指标是否满足既定值
步骤:

在线用户数、并发用户数、压力线程数、TPS的关系如下:

1.单个用户的TPS计算:通过日志,拉取一个用户的操作记录,记录下来一个事务的操作时间。例如:1个用户,100秒内,完成性能测试策略了一个完整流程,有4个操作(查询商品、填写信息、支付、订单详情),调用了20个接口。
用户级TPS:1 1/100=0.01TPS。 (1个用户) (1个完成业务)/100s
操作级: 1 4/100=0.04 TPS. (1个用户) (4个操作)/100s
接口级: 1 20/100=0.2TPS (1个用户) (20个接口)/100s

2.多用户的TPS。从生产拉取1天的用户量,记算下平均完成的时间(这会有一个问题就是很多用户没有真实走完一个完整业务,所以这个TPS计算是要注意?为了方便仅做假设每个用户是在100秒内完成)假如有一100万的用户,在1天内完成业务
用户级TPS:1000000 1 1/24/60/60=11.57TPS。 1000000 (1个用户) (1个完成业务)/24小时/60分钟/60秒
操作级: 1000000 1 4/24/60/60=46.29 TPS. 1000000* (1个用户) (4个操作)/24小时/60分钟/60秒
接口级: 1000000 1 20/24/60/60=231.48TPS 1000000 (1个用户)*(20个接口)/24小时/60分钟/60秒

3.峰值时的TPS。 1000人,在1分钟内完成业务
用户级TPS:1000 1 1/60=16.67TPS。 1000 (1个用户) (1个完成业务)/60秒
操作级: 1000 1 4/60=66.67 TPS. 1000* (1个用户) (4个操作)/60秒
接口级: 1000 1 20/60=333.33TPS 1000 (1个用户)*(20个接口)/60秒

4,怎么计算并发用户数和TPS之间的关系。
假如在jmeter中,完成一个完整的流程5秒钟。
用户级TPS:1 1/5=0.2TPS。 (1个用户) (1个完成业务)/5s
操作级: 1 4/5=0.8 TPS. (1个用户) (4个操作)/5s
接口级: 1 20/5=4 TPS (1个用户) (20个接口)/5s

5,无停顿(并发用户)相当于多少有停顿的用户(在线用户)
0.2/0.01=20. 即无停顿TPS/有停顿TPS。
并发度=1/20*100% =5%

6.压力线程数
a)100万在1天内:1000000的在线TPS/并发TPS=11.57/0.2=57.85
b)1000在1分钟内: 1000的峰值TPS/并发TPS=16.67/0.2=83.35

7.并发用户数的计算
并发用户数=在线用户数×有停顿时间的单线程TPS/无停顿时间的单线程TPS

8.并发度:并发度=并发用户/在线用户×100%(取值要在同一时间段)

1.抽取业务模型,可以通过日志系统或埋点等手段获取。
2.业务模型的作用:一是评估线上的性能;二是为后面的容量测试做准备

也可称之为混合容量性能场景,即将所有业务根据比例加到一个场景中,在数据、软硬件环境、监控等的配合之下,分析瓶颈并调优的过程。
1,业务指标

2,对各业务进行基准性能场景测试,对各业务基线测试,并优化以满足业务性能指标
3,抽取线上业务模型
4,根据业务模型,编写执行脚本,进行容量测试

核心就是时长。在长时间的运行之下,观察系统的性能表现,分析瓶颈并调优的过程

1,根据实际的业务需求设置。如性能测试策略我们每周一个发布周期,平均2个月所有的业务线会发布一次(即服务器重启)。那么我们的稳定性测试的策略应该是以最大TPS,执行7~30天。不可少于7天。但可以多于30天。
2,为什么以容量测试的最大TPS? 如果容量测试下来的最大TPS不能稳定执行,其容量测试的结果又什么意义?

该项目/模块你是如何测试的?

从功能、性能、兼容性、可靠性、安装卸载测试等方面来测试(具体的方面根据项目特点和自己的熟悉程度来回答)
1、首先是功能性能测试策略,功能主要包括功能点测试和业务流程测试。
1.1 功能点测试将自己负责的功能模块划分为多个功能点性能测试策略,从自己所负责的模块中挑选一个功能点(案例)描述测试用例的设计思路;
1.2 业务流程的测试性能测试策略:分析模块所涉及的业务流程,使用流程图法来设计对应的流程用例(案例)
2、兼容性方面性能测试策略:测试系统兼容性、版本兼容性、分辨率兼容性、浏览器兼容性(web系统)等
3、性能测试:根据需求选取性能测试策略(从负载、压力、稳定性、并发中选取,结合项目案例来回答)
4、可靠性测试:系统处理各种异常情况的方案(项目案例回答:如守护程序、数据备份、集群部署等)
5、安装卸载测试
。。。。。
注意:前面提到的每个知识点要和自己所负责的模块挂钩,事先把案例准备好,黑马程序员测试课程的时候讲过。

测试计划的测试策略

提供了对测试对象进行测试的推荐方法。
对于每种测试,都应提供测试说明,并解释其实施的原因。
制定测试策略时所考虑的主要事项有:将要使用的技术以及判断测试何时完成的标准。
下面列出了在进行每项测试时需考虑的事项,除此之外,测试还只应在安全的环境中使用已知的、有控制的数据库来执行。
注意:不实施某种测试,则应该用一句话加以说明,并陈述这样的理由。例如,“将不实施该测试。该测试本项目不适用”。
[要<项目名称中,数据库和数据库进程应作为一个子系统来进行测试。在测试这些子系统时,不应将测试对象的用户界面用作数据的接口。对于数据库管理系统(DBMS),还需要进行深入的研究,以确定可以支持以下测试的工具和技术。]
测试目标:[确保数据库访问方法和进程正常运行,数据不会遭到损坏]
测试范围:
技术:[调用各个数据库访问方法和进程,并在其中填充有效的和无效的数据(或对数据的请求)。
检查数据库,确保数据已按预期的方式填充,并且所有的数据库事件已正常发生;或者检查所返回的数据,确保正当的理由检索到了正确的数据]
完成标准:[所有的数据库访问方法和进程都按照设计的方式运行,数据没有遭到损坏。]
测试重点和优先级:
需考虑的特殊事项:[测试可能需要DBMS开发环境或驱动程序在数据库中直接输入或修改数据。
进程应该以手工方式调用。
应使用小型或最小的数据库(记录的数量有限)来使所有无法接受的事件具有更大的可视度。]
测试目标:确保接口调用的正确性
测试范围:所有软件、硬件接口,记录输入输出数据
技术:
开始标准:
完成标准:
测试重点和优先级:
需考虑的特殊事项:接口的限制条件
[集成测试―主要目的检测系统是否达到需求对业务流程及数据流的处理是否符合标准,检测系统对业务流处理是否存在逻辑不严谨及错误,检测需求是否存在不合理的标准及要求。此阶段测试基于功能完成的测试。]
测试目标:检测需求中业务流程,数据流的正确性
测试范围:需求中明确的业务流程,或组合不同功能模块而形成一个大的功能。
技术:[利用有效的和无效的数据来执行各个用例、用例流或功能,以核实以下内容:在使用有效数据时得到预期的结果。
在使用无效数据时显示相应的错误消息或警告消息。各业务规则都得到了正确的应用。]
开始标准:在完成某个集成测试时必须达到标准
完成标准:[所计划的测试已全部执行。所发现的缺陷已全部解决。]
测试重点和优先级:测试重点指在测试过程中需着重测试的地方,优先级可以根据需求及严重来定
需考虑的特殊事项:[确定或说明那些将对功能测试的实施和执行造成影响的事项或因素(内部的或外部的)]
[对测试对象的功能测试应侧重于所有可直接追踪到用例或业务功能和业务规则的测试需求。这种测试的目标是核实数据的接受、处理和检索是否正确,以及业务规则的实施是否恰当。此类测试基于黑盒技术,该技术通过图形用户界面(GUI)与应用程序进行交互,并对交互的输出或结果进行分析,以此来核实应用程序及其内部进程。以下为各种应用程序列出了推荐使用的测试概要:]
测试目标:[确保测试的功能正常,其中包括导航,数据输入,处理和检索等功能。]
测试范围:
技术:[利用有效的和无效的数据来执行各个用例、用例流或功能,以核实以下内容:在使用有效数据时得到预期的结果。
在使用无效数据时显示相应的错误消息或警告消息。各业务规则都得到了正确的应用。]
开始标准:
完成标准:
测试重点和优先级:
需考虑的特殊事项:[确定或说明那些将对功能测试的实施和执行造成影响的事项或因素(内部的或外部的)]
[用户界面(UI)测试用于核实用户与软件之间的交互。UI测试的目标是确保用户界面会通过测试对象的功能来为用户提供相应的访问或浏览功能。另外,UI测试还可确保UI中的对象按照预期的方式运行,并符合公司或行业的标准。]
测试目标:[核实以下内容:
通过测试进行的浏览可正确反映业务的功能和需求,这种浏览包括窗口与窗口之间、字段与字段之间的浏览,以及各种访问方法(Tab键、鼠标移动、和快捷键)的使用窗口的对象和特征(例如,菜单、大小、位置、状态和中心)都符合标准。]
测试范围:
技术:[为每个窗口创建或修改测试,以核实各个应用程序窗口和对象都可正确地进行浏览,并处于正常的对象状态。]
开始标准:
完成标准:[成功地核实出各个窗口都与基准版本保持一致,或符合可接受标准]
测试重点和优先级:
需考虑的特殊事项:[并不是所有定制或第三方对象的特征都可访问。]
[性能评测是一种性能测试,它对响应时间、事务处理速率和其他与时间相关的需求进行评测和评估。性能评测的目标是核实性能需求是否都已满足。实施和执行性能评测的目的是将测试对象的性能行为当作条件(例如工作量或硬件配置)的一种函数来进行评测和微调。
注:以下所说的事务是指“逻辑业务事务”。这种事务被定义为将由系统的某个Actor通过使用测试对象来执行的特定用例,添加或修改给定的合同。]
测试目标:[核实所指定的事务或业务功能在以下情况下的性能行为:正常的预期工作量预期的最繁重工作量]
测试范围:
技术:[使用为功能或业务周期测试制定的测试过程。通过修改数据文件来增加事务数量,或通过修改脚本来增加每项事务的迭代数量。脚本应该在一台计算机上运行(最好是以单个用户、单个事务为基准),并在多个客户机(虚拟的或实际的客户机,请参见下面的“需要考虑的特殊事项”)上重复。]
开始标准:
完成标准:[单个事务或单个用户:在每个事务所预期时间范围内成功地完成测试脚本,没有发生任何故障。][多个事务或多个用户:在可接受的时间范围内成功地完成测试脚本,没有发生任何故障。]
测试重点和优先级:
需考虑的特殊事项:[综合的性能测试还包括在服务器上添加后台工作量。可采用多种方法来执行此操作,其中包括:直接将“事务强行分配到”服务器上,这通常以“结构化语言”(SQL)调用的形式来实现。通过创建“虚拟的”用户负载来模拟许多个(通常为数百个)客户机。此负载可通过“远程终端仿真(Remote Terminal Emulation)工具来实现。此技术还可用于在网络中加载“流量”。使用多台实际客户机(每台客户机都运行测试脚本)在系统上添加负载。性能测试应该在专用的计算机上或在专用的机时内执行,以便实现完全的控制和精确的评测。性能测试所用的数据库应该是实际大小或相同缩放比例的数据库。]
[负载测试是一种性能测试。在这种测试中,将使测试对象承担不同的工作量,以评测和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。负载 测试的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。此外,负载测试还要评估性能特征,例如,响应时间、事务处理速率和其他与时间相关 的方面。]
[注:以下所说的事务是指“逻辑业务事务”。这各事务被定义为将由系统的某个最终用户通过使用应用程序来执行的特定功能,例如,添加或修改给定的合同。]
测试目标:[核实所指定的事务或商业理由在不同的工作量条件下的性能行为时间。]
测试范围:
技术:[使用为功能或业务周期测试制定的测试。通过修改数据文件来增加事务数量,或通过修改脚本来增加每项事务发生的次数。]
开始标准:
完成标准:[多个事务或多个用户:在可接受的时间范围内成功地完成测试,没有发生任何故障。]
测试重点和优先级:
需考虑的特殊事项:[负载测试应该在专用的计算机上或在专用的机时内执行,以便实现完全的控制和精确的评测。
负载测试所用的数据库应该是实际大小或相同缩放比例的数据库。]
[强度测试是一种性能测试,实施和执行此类测试的目的是找出因资源不足或资源争用而导致的错误。如果内存或磁盘空间不足,测试对象就可能会表现出一些在正常条 件下并不明显的缺陷。而其他缺陷则可能由于争用共享资源(如数据库锁或网络带宽)而造成的。强度测试还可用于确定测试对象能够处理的最大工作量。]
[注:以下提到的事务都是指逻辑业务事务。]
测试目标:[核实测试对象能够在以下强度条件下正常运行,不会出现任何错误:服务器上几乎没有或根本没有可用的内存(RAM和DASD)连接或模拟了最大实际(实际允许)数量的客户机多个用户对相同的数据或帐户执行相同的事务最繁重的事务量或最差的事务组合(请参见上面的“性能测试”)。注:强度测试的目标可表述为确定和记录那些使系统无法继续正常运行的情况或条件。
客户机的强度测试在“配置测试”的第3.1.11节中进行了说明。]
测试范围:
技术:[使用为性能评测或负载测试制定的测试。要对有限的资源进行测试,就应该在一台计算机上运行测试,而且应该减少或限制服务器上的RAM和DASD。对于其他强度测试,应该使用多台客户机来运行相同的测试或互补的测试,以产生最繁重的事务量或最差的事务组合。]
开始标准:
完成标准:[所计划的测试已全部执行,并且在达到或超出指定的系统限制时没有出现任何软件故障,或者导致系统出现故障条件的并不在指定的条件范围之内。]
测试重点和优先级:
需考虑的特殊事项:[如果要增加网络工作强度,可能会需要使用网络工具来给网络加载消息或信息包。应该暂时减少用于系统的DASD,以限制数据库可用空间的增长。使多个客户机对相同的记录或数据帐户同时进行的访问达到同步。]
[容量测试使测试对象处理大量的数据,以确定是否达到了将使软件发生故障的极限。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。例 如,如果测试对象正在为生成一份报表而处理一组数据库记录,那么容量测试就会使用一个大型的测试数据库。检验该软件是否正常运行并生成了正确的报表。]
测试目标:[核实测试对象在以下高容量条件下能否正常运行:连接或模拟了最大(实际或实际允许)数量的客户机,所有客户机在长时间内执行相同的、且情况(性能)最坏的业务功能。已达到最大的数据库大小(实际的或按比例缩放的),而且同时执行多个查询或报表事务。]
测试范围:
技术:[使用为性能评测或负载测试制定的测试。应该使用多台客户机来运行相同的测试或互补的测试,以便在长时间内产生最繁重的事务量或最差的事务组合(请参见上面的“强度测试”)创建最大的数据库大小(实际的、按比例缩放的、或填充了代表性数据的数据库),并使用多台客户机在长时间内同时运行查询和报表事务。]
开始标准:
完成标准:所计划的测试已全部执行,而且达到或超出指定的系统限制时没有出现任何软件故障。]
测试重点和优先级:
需考虑的特殊事项:[对于上述的高容量条件,哪个时间段是可以接受的时间?]
安全性和访问 [故障转移和恢复测试可可确保测试对象能成功完成转移,并能从导致意外数据损失或数据完整性破坏的各种硬件、软件可网络故障中恢复。故障转移测试可确保:对于必须持续运行的系统,一旦发生故障,备用系统就将不失时机地“顶替”发生故障的系统,以避免丢失任何数据或事务。恢复测试是一种对抗性的测试过程。在这种测试中,将把应用程序或系统置于极端的条件下(或者是模拟的极端条件下),以产生故障(例如设备输入/输出(I/O)故障或无效的数据库指针和关键字)。然后调用恢复进程并监测和检查应用程序和系统,核实应用程序或系统和数据已得到了正确的恢复。]
测试目标:[确保恢复进程(手工或自动)将数据库、应用程序和系统正确地恢复到预期的已知状态。
测试中将包括以下各种情况:客户机断电、服务器断电、通过网络服务器产生的通信中断DASD和/或DASD控制器被中断、断电或与DASD和/或DASD控制器的通信中断
周期未完成(数据过滤进程被中断,数据同步进程被中断)、数据库指针或关键字无效、数据库中的数据元素无效或遭到破坏]
测试范围:
技术:[应该使用为功能和业务周期测试创建的测试来创建一系列的事务。一旦达到预期的测试起点,就应该分别执行或模拟以下操作:
 客户机断电:关闭PC机的电源。
 服务器断电:模拟或启动服务器的断电过程。
 通过网络服务器产生的中断:模拟或启动网络的通信中断(实际断开通信线路的连接或关闭网络服务器或路由器的电源)。
 DASD和DASD控制器被中断、断电或与DASD和DASD控制器的通信中断:模拟与一个或多个DASD控制器或设备的通信,或实际取消这种通信。
 一旦实现了上述情况(或模拟情况),就应该执行其他事务。而且一旦达到第二个测试点状态,就应调用恢复过程。
 在测试不完整的周期时,所使用的技术与上述技术相同,只不过应异常终止或提前终止数据库进程本身。
 对以下情况的测试需要达到一个已知的数据库状态。当破坏若干个数据库字段、指针和关键字时,应该以手工方式在数据库中(通过数据库工具)直接进行。其他事务应该通过使用“应用程序功能测试”和“业务周期测试”中的测试来执行,并且应执行完整的周期。]
开始标准:
完成标准:[在所有上述情况中,应用程序、数据库和系统应该在恢复过程完成时立即返回到一个已知的预期状态。此状态包括仅限于已知损坏的字段、指针或关键字范围内的数据损坏,以及表明进程或事务因中断面未被完成的报表。]
测试重点和优先级:
需考虑的特殊事项: [恢复测试会给其他操作带来许多的麻烦。断开缆线连接的方法(模拟断电或通信中断)可能并不可取或不可行。所以,可能会需要采用其他方法,例如诊断性软件工具。
 需要系统(或计算机操作)、数据库和网络组中的资源。
 这些测试应该在工作时间之外或在一台独立的计算机上运行。]
[配置测试核实测试对象在不同的软件和硬件配置中的运行情况。在大多数生产环境中,客户机工作站、网络连接和数据库服务器的具体硬件规格会有所不同。客户机工 作站可能会安装不同的软件 例如,应用程序、驱动程序等 而且在任何时候,都可能运行许多不同的软件组合,从而占用不同的资源。]
测试目标:[核实测试可在所需的硬件和软件配置中正常运行。]
测试范围:
技术:[使用功能测试脚本。
 在测试过程中或在测试开始之前,打开各种与非测试对象相关的软件(例如Microsoft应用程序:Excel和Word),然后将其关闭。
 执行所选的事务,以模拟Actor与测试对象软件和非测试对象软件之间的交互。
 重复上述步骤,尽量减少客户机工作站上的常规可用内存。]
开始标准:
完成标准:[对于测试对象软件和非测试对象软件的各种组合,所有事务都成功完成,没有出现任何故障。]
测试重点和优先级:
需考虑的特殊事项:[需要、可以使用并可以通过桌面访问哪种非测试对象软件?
 通常使用的是哪些应用程序?
 应用程序正在运行什么数据?例如,在Excel中打开的大型电子表格,或是在Word中打开的100页文档。
 作为此测试的一部分,应将整修系统、Netware、网络服务器、数据库等都记录下来。]
[安装测试有两个目的。第一个目的是确保该软件在正常情况和异常情况的不同条件下 例如,进行首次安装、升级、完整的或自定义的安装 都能进行安装。异常情况 包括磁盘空间不足、缺少目录创建权限等。第二个目的是核实软件在安装后可立即正常运行。这通常是指运行大量为功能测试制定的测试。]
测试目标:核实在以下情况下,测试对象可正确地安装到各种所需的硬件配置中:
 首次安装。以前从未安装过<项目名称的新计算机
 更新。以前安装过相同版本的<项目名称的计算机
 更新。以前安装过从未安装过;<项目名称安装过相同或较早的版本。
 启动或执行安装。
 使用预先确定的功能测试脚本子集来运行事务。
开始标准:
完成标准:<项目名称事务成功执行,没有出现任何故障。
测试重点和优先级:
需考虑的特殊事项:[应该选择<项目名称的哪些事务才能准确地测试出<项目名称应用程序已经成功安装,而且没有遗漏主要的软件构件?。

关于性能测试策略和性能测试分析与调优的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 性能测试策略的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于性能测试分析与调优、性能测试策略的信息别忘了在本站进行查找喔。
上一篇:测试php性能(php测试工程师)
下一篇:it运维服务体系图(it运维系统整体架构图)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~