性能压力测试方案实例

合集下载

性能测试测试方案

性能测试测试方案

性能测试详细测试方案、八、-前言平台XX项目系统已经成功发布,依据项目的规划,未来势必会出现业务系统中信息大量增长的态势。

随着业务系统在生产状态下日趋稳定、成熟,系统的性能问题也逐步成为了我们关注的焦点:每天大数据量的“冲击”,系统能稳定在什么样的性能水平,面临行业公司业务增加时,系统能否经受住“考验”,这些问题需要通过一个完整的性能测试来给出答案。

1第一章XXX系统性能测试概述1.1 被测系统定义XXX系统作为本次测试的被测系统(注:以下所有针对被测系统地描述均为针对XXX系统进行的),XXX系统是由平台开发的一款物流应用软件,后台应用了Oraclellg数据库,该系统包括主要功能有:XXX 等。

在该系统中都存在多用户操作,大数据量操作以及日报、周报、年报的统计,在本次测试中,将针对这些多用户操作,大数据量的查询、统计功能进行如预期性能、用户并发、大数据量、疲劳强度和负载等方面的性能测试,检查并评估在模拟环境中,系统对负载的承受能力,在不同的用户连接情况下,系统的吞吐能力和响应能力,以及在预计的数据容量中,系统能够容忍的最大用户数。

1.1.1 功能简介主要功能上面已提到,由于本文档主要专注于性能在这里功能不再作为重点讲述。

1.1.2 性能测试指标本次测试是针对XXX系统进行的全面性能测试,主要需要获得如下的测试指标。

1、应用系统的负载能力:即系统所能容忍的最大用户数量,也就是在正常的响应时间中,系统能够支持的最多的客户端的数量。

2、应用系统的吞吐量:即在一次事务中网络内完成的数据量的总和,吞吐量指标反映的是服务器承受的压力。

事务是用户某一步或几步操作的集合。

3、应用系统的吞吐率:即应用系统在单位时间内完成的数据量,也就是在单位时间内,应用系统针对不同的负载压力,所能完成的数据量。

4、T PS每秒钟系统能够处理事务或交易的数量,它是衡量系统处理能力的重要指标。

5、点击率:每秒钟用户向服务器提交的HTTP青求数。

性能测试方案模板

性能测试方案模板

性能测试方案模板目录:1. 项目背景1.1 公司简介1.2 项目概况2. 性能测试目的2.1 测试目标2.2 重要性说明3. 测试范围3.1 系统环境3.2 测试对象4. 测试方案4.1 测试方法4.2 测试工具4.3 测试流程5. 测试计划5.1 测试时间安排5.2 测试人员分工6. 测试执行6.1 测试步骤6.2 测试记录7. 测试结果分析7.1 性能指标分析7.2 结果评估8. 总结与建议8.1 测试总结8.2 改进建议项目背景:公司简介:本公司是一家专业的软件开发公司,致力于为客户提供高质量的软件解决方案。

我们拥有一支经验丰富的团队,能够满足客户不同的需求。

本次性能测试是针对最新开发的一款电商平台进行的。

项目概况:该电商平台是一个在线购物网站,具有用户注册、浏览商品、下单、支付等功能。

为了确保系统在高并发情况下的稳定性,我们进行了性能测试。

性能测试目的:测试目标:本次性能测试的主要目标是评估系统在正常和峰值负载情况下的性能表现,包括响应时间、吞吐量等指标。

重要性说明:性能测试对于确保系统的稳定性和可靠性非常重要。

通过性能测试,可以及时发现并解决系统性能方面的问题,提升用户体验和客户满意度。

测试范围:系统环境:本次性能测试涵盖了系统的硬件配置、操作系统、数据库等方面的环境因素。

通过模拟真实用户场景,评估系统在不同环境下的性能表现。

测试对象:本次性能测试的对象是电商平台的核心功能模块,包括用户注册、浏览商品、下单、支付等功能。

针对每个功能模块,我们将进行压力测试、负载测试等多种测试方式。

测试方案:测试方法:本次性能测试采用自动化测试工具进行,通过模拟用户行为,对系统进行压力测试和负载测试。

同时,我们将监控系统的性能指标,如响应时间、CPU使用率等。

测试工具:我们选择了JMeter作为性能测试工具,其简单易用且功能强大。

通过JMeter,我们可以模拟大量用户同时访问系统,评估系统的性能。

测试流程:性能测试流程包括测试准备、测试执行、测试分析和测试报告等阶段。

系统性能及压力测试方案

系统性能及压力测试方案

系统性能及压力测试方案1.系统性能1.1.被测系统定义系统作为本次测试的被测系统,系统是由java编写的一个三层架构的应用软件,后台应用了MySQL数据库,在本次测试中,将针检查并评估在模拟环境中,系统对负载的承受能力,在不同的用户连接情况下,系统的吞吐能力和响应能力,以及在预计的数据容量中,系统能够容忍的最大用户数。

性能测试指标本次测试是针对系统在应对密集整转的大压力下而进行的,主要需要获得如下的测试指标。

1、应用系统的负载能力:即系统所能容忍的最大用户数量,也就是在正常的响应时间中,系统能够支持的最多的客户端的数量。

2、应用系统的吞吐率:即应用系统在单位时间内完成的交易量,也就是在单位时间内,应用系统针对不同的负载压力,所能完成的交易数量。

3、系统的响应能力:即在各种负载压力情况下,系统的响应时间,也就是从客户端请求发起,到服务器端应答返回所需要的时间,包括网络传输时间和服务器处理时间。

4、应用系统的可靠性:即在连续工作时间状态下,系统能够正常运行的时间,即在连续工作时间段内没有出错信息。

2.系统结构及流程系统在实际生产中的体系结构跟本次性能测试所采用的体系结构是一样的,交易流程也完全一致的。

不过,由于硬件条件的限制,本次性能测试的硬件平台跟实际生产环境略有不同。

2.1.系统总体结构描述本系统的总体结构,包括:硬件组织体系结构、网络组织体系结构、软件组织体系结构和功能模块的组织体系结构。

2.2.功能模块本次性能测试中各类操作都是由若干功能模块组成的,每个功能都根据其执行特点分成了若干操作步骤,每个步骤就是一个功能点(即功能模块),本次压力测试主要涉及的功能模块以及所属操作如下表业务流程本次性能测试中,选择的各类交易的业务流程如下:查询的业务流程只是单一步骤的,即:输入查询条件后获取查询结果,因此在本次性能测试中只作为一个事务处理。

2.3.关键点描述(KP)本次性能测试的关键点,就是查看系统在不同用户数量(并发)压力下的表现,即:支持的并发用户数目和并发用户发送频率,以及在较大压力下,系统的处理能力以及CPU、数据库I/O 和内存的使用情况,并找出相应的性能瓶颈。

性能测试之测试用例(方案篇)

性能测试之测试用例(方案篇)

性能测试之测试用例(方案篇)性能测试在软件测试中占有重要的地位,而性能测试又关联很多内容。

例如压力和强度测试就与性能测试密切相关:针对一个网站进行测试,模拟10到50个用户就是在进行常规性能测试,用户增加到1000乃至上万就变成了压力/负载测试,如果同时对系统进行大量的数据查询操作,就包含了强度测试。

为了便于性能测试工作的实施,这里的性能测试综合了性能、强度、压力、负载等多方面的测试内容,主要包含的内容有:预期性能指标测试、用户并发性能测试、疲劳强度测试、大数据量测试和速度测试、网络、服务器等方面的内容。

性能测试不同的系统有不同的要求,编写方法要根据实际要求进行编写,本文提出一个常见的参考方案,在实际工作中,可以根据需要加入其它例如内存泄露等和性能相关的测试用例。

下面介绍各个部分性能测试用例包含的内容:1.1预期性能指标测试用例通常系统在设计前都会提出一些性能指标,这些指标是性能测试要完成的首要工作之一。

针对每个指标都要编写多个测试用例来验证是否达到要求,并根据测试结果来改进系统的性能。

这类通常以单用户为主,如果遇到并发用户的情况,可以归到并发用户测试用例中。

这类用例通常都是可以通过手工来执行的用例,例如示例中的上传一份文件,期望的性能为2M/S,完全可以手动上传文件,同时用秒表计时。

这些内容通常在需求说明书中可以显而易见的查到。

不过当看到如支持并发用户300人,就应该放到后面进行。

测试结果也是直接记录是否达到要求,如果系统没有达到要求则进行改善。

1.2用户并发性能测试用例用户并发测试是性能测试的最主要部分,包含了负载测试和压力测试的过程。

主要是逐渐增加用户数量来加重系统负担,直到出现不能接收的性能点或者瓶颈。

一般要测试正常数量的用户并发和极限数量下用户并发的情况。

并发用户测试主要是对系统的核心功能和重要业务进行测试,要以真实的业务数据作为输入,选择有代表性和关键的业务操作来设计测试用例。

主要编写以下两个方面的用例:核心模块的测试(可以理解为“单元性能测试”):对核心功能模块进行并发用户测试,测试系统是否能够稳定运行。

压力测试和结果分析实例

压力测试和结果分析实例

海油压力测试报告1.主要录制了系统的承包商管理-承包商登记功能的添加的脚本,其中”add”为完成添加的事物.录制完成后并测试脚本后,模拟场景并运行:1.模拟30个用户完成此操作:上图为用户和事务通过情况,可以看到用户为30的时候都通过了上图为Average Transaction Response Time - Running Vusers图,既运行用户和平均事物响应时间图.可以看出当虚拟用户为30个的时候,平均事物响应时间为6.25秒;上图为Throughput - Running Vusers:既吞吐量-用户图,可以看到当用户在10个的时候是趋于饱和状态的.当用户达到30的时候,经过20秒后吞吐量达到最大,可知完成此次操作的最佳并发用户为10个2.模拟50个用户完成此操作:上图为事物总图,可以看到只有8个通过,其余全部没有通过,而且通过下图可以看到运行到3分钟的时候系统服务已经停止运行此次测试由于在测试过程中出现主键冲突,导致用户超过30的时候会出现上述错误的结果下面测试没有主键冲突的功能:隐患管理-一般隐患功能的添加录制脚本-回放脚本-运行场景:1.50用户操作上图为用户和事务通过情况,可以看到用户为50的时候都通过了上图为Average Transaction Response Time - Running Vusers图,既运行用户和平均事物响应时间图.可以看出当虚拟用户为50个的时候,平均事物响应时间为8.783秒;上图为Throughput - Running Vusers:既吞吐量-用户图,可以看到当用户在15-20个的时候是趋于饱和状态的.当用户达到50的时候,经过10秒后吞吐量达到最大,可知完成此次操作的最佳并发用户为15-20个2.100个用户上图为用户和事务通过情况,可以看到用户为50的时候都通过了上图为Average Transaction Response Time - Running Vusers图,既运行用户和平均事物响应时间图.可以看出当虚拟用户为100个的时候,平均事物响应时间为21.4秒;当平均用户在5个的时候,时间是最低的上图为Transaction Response Time(Distribution)-事务响应时间(分布),可以看到事物响应时间都集中在40s左右3.130用户上图为用户和事务通过情况,可以看到用户为130的时候都通过了上图为Average Transaction Response Time - Running Vusers图,既运行用户和平均事物响应时间图.可以看出当虚拟用户为130个的时候,平均事物响应时间为27.675秒;上图为Transaction Response Time(Distribution)-事务响应时间(分布),可以看到事物响应时间都集中在40-60s之间.4.150用户,测试后结果失败失败查询测试:其中的”查询”事物为此次查询操作的测试,事物名称”chaxun”: 1.150个用户测试后有8个失败.平均响应时间为:24.734下面测试142个用户情况:142个用户全部通过;通过测试后,系统的最大并发用户为142,而且通过测试发现,在不开启任何其它资源的情况下,系统的平均响应时间为3.373s。

压力测试方案范文

压力测试方案范文

压力测试方案范文压力测试是为了检验系统或软件在极端或超过正常使用情况下的性能表现,以评估其最大负荷能力和稳定性。

下面是一个压力测试方案的示例,包含了测试目标、测试环境、测试工具、测试步骤和测试指标等内容。

一、测试目标1.评估系统或软件在预期用户量的情况下的性能表现。

2.测试系统或软件的最大负荷能力,确定其在极端条件下的稳定性。

3.发现和识别系统或软件在高负载情况下的潜在性能问题。

4.为系统或软件的容量规划和优化提供数据支持。

二、测试环境1.硬件环境:详细记录测试所使用的服务器、网络设备和存储设备等硬件的规格和配置。

2.软件环境:详细记录测试所使用的操作系统、数据库和应用软件等的版本和配置。

三、测试工具1. 性能测试工具:根据测试需求和技术选型,选择适合的性能测试工具,如JMeter、LoadRunner等。

2. 监控工具:选择合适的监控工具,如Zabbix、Nagios等,用于监测系统资源使用、性能指标变化等。

四、测试步骤1.系统准备:确保系统或软件已经安装并配置完成,导入测试数据,并根据实际使用情况设置合理的并发和用户数目。

2.配置测试环境:设置测试服务器、网络和存储设备的性能参数,确保测试环境的稳定性和一致性。

3.制定测试计划:定义测试用例和测试脚本,并设置负载模型,如逐步增加并发用户数或请求频率。

4.执行压力测试:按照测试计划和负载模型,运行性能测试工具,模拟用户请求并记录系统的性能数据。

5.监控和收集性能数据:在测试过程中,使用监控工具对测试环境进行实时监测,记录系统资源使用和性能指标数据。

6.分析测试结果:根据收集到的性能数据,进行性能指标统计分析,如响应时间、吞吐量、并发数等,找出性能瓶颈和潜在问题。

7.优化和重复测试:根据分析结果,对系统或软件进行优化,并根据需要重复执行测试步骤,直到达到预期的性能目标。

五、测试指标1.响应时间:记录用户请求的响应时间,包括平均响应时间、最大响应时间和百分位响应时间。

性能测试报告范例 - X项目AB系统性能测试报告

性能测试报告范例 - X项目AB系统性能测试报告

X项目AB系统性能测试报告项目编号:XXXXXX-ACP101项目名称:X项目编写:XXX编写日期:审核:XX审核日期:批准:批准日期:1.前言1.1.测试目标本次性能测试的目的:通过测试获取与主机、后台流程平台交互过程中终端服务器处理性能及资源消耗情况。

评估目前处理性能是否满足业务需求。

2.测试方法压力测试采用自动化测试来实现,使用业界主流的压力测试工具LoadRunner8.1及其方法论完成对被测系统进行测试和结果分析。

压力测试工具LoadRunner通过使用虚拟用户模拟真实用户的操作,发起交易,完成对被测系统的加压,监控并记录被测系统的交易响应能力,各服务器的资源使用情况,获取交易响应时间、吞吐率等各项性能指标,并根据测试结果分析系统的性能瓶颈,评估系统的整体性能。

压力测试的测试方法主要包括:在被测系统中录制压力测试中使用的交易脚本,形成可以多次重复并发运行的测试脚本,由LoadRunner的控制台调度这些脚本,并发地执行交易,从而模拟真实生产系统的压力,形成对被测系统的加压,并监控和记录被测系统在这样的压力状况下表现出来的各项特征,例如:交易响应时间变化趋势、吞吐率变化趋势和系统资源(CPU)利用率的变化趋势等,获取被测系统在大压力情况下的各项性能指标。

2.1.测试准备(1)开发测试交易,交易首先进行圈存,然后发任务给流程平台(2)使用grinder交易执行过程作为测试交易的脚本(3)使用下列测试数据(帐号)进行维护。

测试时随机获取不同行所的账号进行测试。

压力测试账号(4)准备一台台式机作为调试测试脚本、发起测试的客户端。

配置:CPU intel core 2duo cpu(2.93GHz);2GB Memory;os windows xp sp3.IP为10.2.45.92(5)安装被测试交易到被测试的ABS终端服务器上。

2.2.被测试系统的系统配置系统名称Ip地址os CPU Memory(GB)Network(M)应用程序参数ABS10.2.39.13AIX5.364bit POWER52.3*241000Java:1.4.2(64bit)SR9mem:ms256;mx1536Log:errorGateway10.2.39.14AIX5.364bit POWER52.3*241000Java:1.4.2(64bit)SR9mem:ms256;mx1280Log:error2.3.资源监控本次压力测试监控的资源是操作系统AIX资源。

测试方案 压力测试

测试方案 压力测试

测试方案压力测试1. 测试概述压力测试是一种用来测试系统在不同负载条件下是否能够正常工作的测试方法。

目的是评估系统的性能和稳定性,并发现系统存在的瓶颈和问题。

本文档旨在提供一种基本的压力测试方案,用于测试系统在负载较高情况下的性能表现和稳定性。

2. 测试目标本次压力测试的主要目标是: - 确定系统在高峰负载情况下的性能表现,包括响应时间、吞吐量等指标。

- 发现系统在压力下出现的性能瓶颈和问题,并进行优化。

- 验证系统在负载条件下的稳定性和可靠性。

3. 测试环境搭建3.1 硬件环境•服务器: 2台双核Intel Xeon CPU,8GB内存,1000Mbps 以太网口•客户端: 1台双核Intel Core i5 CPU,4GB内存,1000Mbps 以太网口3.2 软件环境•操作系统: CentOS 7.0•Web服务器: Nginx 1.16.1•应用服务器: Tomcat 9.0.41•数据库: MySQL 8.0.21•压力测试工具: Apache JMeter 5.33.3 网络架构•客户端、服务器和数据库通过局域网连接,互相通信。

4. 测试场景设计本次压力测试主要涵盖以下场景: 1. 用户登录: 模拟多个用户同时登录系统。

2. 数据查询: 模拟并发查询数据库的请求。

3. 文件上传: 测试文件上传功能的性能。

5. 测试步骤5.1 准备测试数据在测试前,需要准备一定数量的测试数据,包括用户账号、查询数据和待上传的文件。

5.2 配置JMeter•配置线程组: 设置线程数、循环次数和启动时间。

•配置HTTP请求: 设置请求的URL和参数。

5.3 执行测试启动JMeter并开始执行压力测试脚本。

5.4 监控系统性能在测试过程中,监控以下指标: - CPU使用率 - 内存占用 - 硬盘I/O - 网络流量5.5 结果分析分析测试结果,查找系统的性能瓶颈和问题。

6. 测试报告根据测试结果生成测试报告,包括以下内容: - 测试目的和背景 - 测试环境和配置 - 测试步骤和过程 - 测试结果和分析 - 总结和建议7. 风险和注意事项•在进行压力测试时,要注意系统的安全性和可靠性,避免对正式环境产生影响。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

UDMS性能压力测试方案版本控制版本日期作者备注v1.0 2011-9-9 初稿目录一、概述 (4)1.1 项目背景和测试目的 (4)1.2 被测系统介绍 (4)1.3 测试可接收条件 (4)二、测试需求 (5)三、测试方法 (5)3.1 测试方法 (5)3.2 测试案例 (6)3.3 测试流程 (6)3.4 数据文件准备 (6)四、测试环境 (7)4.1网络拓扑图 (7)4.2环境配置 (7)五、测试实施 (8)5.1试资源与进度 (8)附录:测试工具原理 (9)一、概述1.1 项目背景和测试目的为保障UDMS后续示范应用项目能够顺利实施,UDMS项目组希望在示范应用项目正式实施前了目前的UDMS性能是否可行,即了解示范应用项目技术的可行性。

另外,通过测试,还希望了解使用不同技术之间实现的差异。

1.2 被测系统介绍本次被测系统是目前已完成的UDMS1.1系统,系统逻辑结构如下图:系统逻辑结构图本次测试主要测试数据的索引性能及并发数据搜索性能。

1.3 测试可接收条件1、数据索引性能每次测试均需成功;2、数据并发搜索性能根据并发用户量决定,见后续描述;每次测试,以上条件必须同时满足,方视为本次测试通过。

二、测试需求本次测试的需求包括:《项目计划文档》《性能需求规格说明书》《系统架构设计文档》三、测试方法3.1 测试方法测试过程采用自动测试工具进行。

使用HP公司的测试产品:LoadRunner。

对数据索引性能测试不使用上述工具。

1.测试UDMS系统数据索引性能:对UDMS系统进行数据导入测试,分别导入1万、10万,100万,1000万条文本及多媒体数据,之后记录每次导入的时间。

2.整个系统能够支持多少用户同时访问模拟多个虚拟用户,同时向UDMS发送搜索请求,之后记录每个虚拟用户的响应时间。

3、不同技术间实现的差异如有条件,可测试示范应用系统使用不同数据库平台之间的性能差异。

该部分测试视实际情况决定是否需要测试。

3.2 测试案例测试目的虚拟用户类型Case No. 并发用户数数据量测试数据索引Non-GUIVuser 001 1 1万002 1 10万003 1 100万004 1 1000万整个系统能够支持多少用户同时访问Non-GUIVuser005 1 100万006 10 100万007 100 100万008 1000 100万Non-GUIVuser008 1 1000万010 10 1000万011 100 1000万012 1000 1000万3.3 测试流程正式测试过程如下:✓确认被测环境正常;✓确认测试环境设置;✓开始测试;✓存储测试结果;✓系统调试;✓应用调试;✓环境维护;3.4 数据文件准备数据文件名称包含内容说明数据量文本数据标注完后的文本GBK格式纯文本1000万多媒体数据带标注文本及媒体文件包括声音、图像及视频1000万四、测试环境4.1网络拓扑图ConsoleLoad GeneratorLoad GeneratorHadoop 、Habase UDMSServer测试网络拓扑图4.2环境配置类型 配置软件 被测系统服务器DELL POWEREDGE210 CPU:INTEL XEON E31220 3.1GHZ DISK:2T MEMORY:8G测试系统测试机器 及控制台 CPU:INTEL CORE I5-2410M 2.30HZ MEMORY:2G网络交换机千兆网络五、测试实施5.1试资源与进度项目阶段任务分解任务内容完成标准责任人资源与时间项目启动设立项目项目定义,规划项目运作模式,编制项目计划,组建项目班子与实施队伍输出《项目计划》测试经理0.5人天测试计划和测试设计测试需求调研明确测试需求、测试目标、界定测试范围、任务和具体内容双方就测试需求达成共识测试人员0.5人天制定测试方案细化《测试方案》,定义测试范围,并定义各项测试活动和步骤,具体安排测试实施过程及测试进度输出《测试方案》(初稿)测试经理2人天测试执行预测试证明测试脚本可用,证明测试流程可用证明测试环境配置合理证明测试数据准备充分按照预期可接收条件开发及测试人员1天系统调优使系统运行在最佳状态运行500或1000并发用户场景,测试经理和项目经理直到认为测试停止项目负责人/开发人员/测试人员/测试经理2天性能测试根据测试案例测试按照预期可接收条件测试人员1天压力测试测试系统究竟能够承受的业务量按照预期可接收条件,系统已经不能承受测试人员1天测试评估总结总结输出项目报告、相关文档归档,安排后续工作输出《项目报告》测试人员2天测试组织结构图附录:测试工具原理Mercury Interactive 公司的客户机/服务器系统的压力测试工具LoadRunner,其工作原理为:通过一个中心控制点,在一个或几个主机上同时模拟成百上千的实际用户的操作,从而生成一致的、可测量的及可重复的系统负载,并记录特定交易操作的响应时间。

概要地说:首先录制应用程序的操作过程,测试工具会自动生成可执行的脚本,该脚本运行起来,从服务器端看,就如同一个实际的用户在进行操作,我们称为虚拟用户。

然后,通过中心控制点(Controller)设置测试场景,控制许多个虚拟用户在多台Agent机器上同时运行,监控运行状态,收集响应时间等性能数据。

●使用虚拟用户(Vuser)替代实际用户每个模拟的用户即为一个虚拟用户,其实就是一个运行的测试脚本。

LoadRunner在PC上主要有两种Vuser:非图形用户界面的虚拟用户(Non-GUI Vuser)和图形用户界面虚拟用户(GUI Vuser)。

Non-GUI Vuser是直接通过API调用和Web/Application/DB服务器进行交互的,它的脚本是直接向服务器提交请求的类C语言程序。

多个Non-GUI Vuser 可运行于一台主机上。

Vuser可通过Virtual User Generator来录制生成,在录制脚本中可以标明某一活动(transaction)的开始和结束点,用于具体度量这一活动的响应时间及性能,还可以在某一操作之前定义集结点(rendezvous),用于测试这一操作的多用户并发。

GUI Vuser模拟实际用户运行应用程序进行操作的情况,它的脚本记录了客户机上所有的界面操作。

GUI Vuser可通过Mercury Interactive 公司的功能测试工具WinRunner来录制生成。

由于本次压力测试的目的是检验服务器对压力的承载能力,因此建议通过在一台主机上运行多个Non-GUI Vuser来模拟多用户的活动进行压力测试。

●测试脚本的参数化测试脚本反映的是录制时输入的数据的情况。

但由于录制操作可能引起原输入数据状态的变化,因此要修改测试脚本中的输入数据及与其相关的数据;而且为了更准确地模拟真实系统的运作,输入的数据及与其相关的数据就必须参数化,并且为该参数建立一个包含所有数据的参数文件。

这样当模拟多用户进行压力测试时,就可控制每个虚拟用户使用参数文件中的不同数据。

通过中心控制点(Controller)管理虚拟用户在中心控制点,定制测试场景,即将要在测试会话中发生的事件。

定制包括模拟的用户个数、模拟用户所在的主机、模拟用户的动作等。

在中心控制点控制场景的运行,管理所有虚拟用户的活动,监控虚拟用户的状态,也可以无人照料地运行。

场景执行完后,可通过Controller的性能分析图形和报表对结果数据进行分析。

代理程序必须安装在参与测试的每一台主机上,当场景开始运行,代理程序负责Controller 与主机之间的通讯。

使用自动生成的图表和报表分析测试结果在每个测试场景运行完后,Controller 自动收集服务器、网络及客户端的性能数据,并以图形和报表的形式显示。

其中包括服务器响应Vuser 以及transaction 提交的请求和任务的时间;在运行期间的基于活动Vuser 数目的transaction 性能时间;服务器磁盘I/O 、CPU 使用情况,网络延迟等数据。

测试方法及步骤1、建立虚拟用户(生成测试脚本)在LoadRunner 的Virtual User Generator 中录制测试脚本,建立虚拟用户,一般一个业务操作录制成一个测试脚本,步骤如下:1) 根据应用软件的体系结构、中间件、数据库或客户端与服务器之间的协议,选择对应的虚拟用户类型,如:WEB 、Oracle 、Tuxedo 、WinSocket 等等;2) 指定要录制的可执行程序,开始录制;3) 在Vuser init section 中记录登录应用系统的过程; 4) 在 Actions section 中记录功能操作过程,适当加入事务(transaction )的开始与结束点(事务也可在脚本生成后,直接在脚本中加入)。

当需要记录压力测试过程中某一操作的响应时间时,则在执行这一操作前定义事务的开始点,并给这一事务命名,在操作结束后定义该事务的结束点; 5) 在Vuser end section 中记录退出系统的过程;6) 回放测试脚本,检验测试脚本执行的正确性(有可能要恢复录制以前的数据状态,或进行必要的参数化)。

Application/WebServ erLoadRunner ControllerLANLoadRunner VusersDatabaseClient1、试脚本的参数化测试脚本反映的是录制时输入的数据的情况,但为了更准确地模拟真实系统的运作,如模拟不同用户的登录,不同用户查询,有些输入的数据必须参数化,并且为该参数建立一个包含所有可能的数据的参数文件。

这样当模拟多用户进行压力测试时,就可控制每个虚拟用户使用参数文件中的不同数据。

参数的选择、参数文件的定制具体根据应用软件的实际情况而定,但要保证录制的脚本能够顺利地执行回放,且完成相应的业务功能。

2、定制压力测试场景在LoadRunner的Controller中,定制压力测试场景,也就是模拟一个多用户并发的情况,包括:运行虚拟用户的测试主机、在测试机上运行的虚拟用户数、虚拟用户运行的测试脚本、每个虚拟用户的循环次数等等。

1)虚拟用户并发数:定义执行某一测试脚本的虚拟用户并发数,则虚拟用户并发总数为各脚本虚拟用户并发数之和;由于在运行测试脚本时,忽略了Think Time,因此一个虚拟用户的操作是非常连贯的,其强度远远大于一个实际用户的操作强度;另外,为了测试引起系统性能急剧下降的拐点和引起系统崩溃的崩溃点,并发的虚拟用户数需逐渐增加,每次增加的数量可视测试的具体情况而定。

2)测试主机:选择运行某一测试脚本的测试主机。

3)虚拟用户执行的脚本:选择虚拟用户执行的测试脚本,即完成某一业务功能的测试脚本。

4)Iteration Count:虚拟用户运行测试脚本Actions section部分的循环次数,增加循环次数是为了保证在某一稍长的时间段内有一个稳定的负载,这样统计的结果才比较准确。

相关文档
最新文档