性能测试方案.docx
《性能测试方案.docx》由会员分享,可在线阅读,更多相关《性能测试方案.docx(12页珍藏版)》请在冰豆网上搜索。
性能测试方案
文档修改历史
日期
版本
作者
修改内容
审批人
发布日期
2009.08.11
V1.0
Wellen
初稿
2009.08.11
2009.09.22
V1.2
Wellen
2009.09.22
1.文档介绍
1.1文档目的
本次性能测试的目的是****系统的性能情况。
即:
在一定的负载下能否正常运行,响应时间和响应速度情况;长时间运行,系统是否能运行正常。
找出平台的性能瓶颈并调优,解决平台的性能问题,如内存溢出,速度慢等问题。
编写本方案的目的是指导本次性能测试有序的进行,相关人员了解本次性能测试。
1.2读者对象
本方案的预期读者是:
项目负责人、测试人员或其他相关人员。
1.3参考文献
需求分析说明书
平台设计说明书
数据库设计说明书
1.4术语与解释
无
2.测试环境
模拟客户使用环境(最好模拟客户实际使用的配置环境)。
具体如下:
2.1.测试环境
1、服务器操作系统:
Windowsserver2003
2、测试客户操作系统:
WindowsXP
3、数据库及版本:
;地址:
192.168.;端口:
4、WEB应用服务器:
Tomcat
5、测试地址:
http:
//192.168.:
8088/
2.2.测试工具
LoadRunner8.1
3.测试需求
3.1.测试功能点
数据录入、数据查询、数据统表、情况统计表等。
3.2.性能需求
1)并发数达到60时,登陆系统平均响应时间不超过30秒;
2)并发用户数为100时,操作主要的业务流的响应时间在用户接受的范围内,系统运行正常;
3)12小时运行组合测试用例时,系统正常运行不崩溃;
4)若系统容量不能达到要求的并发数或运行时间时,验证一下达到哪一个数值时,系统将不能支持
4.准备工作
1)测试功能点全部通过功能测试,确保功能上没有问题。
2)准备测试环境服务器:
1、准备好安装windows2003server系统的服务器1台。
2、安装Sybase的数据库软件,尽量多的分配数据设备文件空间(用以保存最近三个月时间的数据以备压力测试)。
3)准备测试环境客户端,如果并发数要求较多时,需要准备机器安装LoadRunner8.1,目前拟定单个用例最大并发数为100,使用服务器和1台客户端产生虚拟用户;
4)对于每一个测试功能点,都要事先录制好相应的测试脚本,包括参数化,准备好测试数据,并且调试好,脚本能够成功的回放,保证在测试的时候能够顺利的运行。
5)制作好每个测试场景,并配置好每个场景的设置。
6)测试过程中保存好脚本和分析结果,并规范的对脚本和分析结果等进行命名;
5.测试完成准则
1)达到性能要求。
即在要求的并发用户数(60)下,系统的响应时间小于客户要求的登陆系统平均响应时间(30秒)。
2)在长时间运行后,系统不崩溃,各功能正常,响应时间小于客户要求时间。
6.测试风险
1)选择的业务流不具有代表性。
即选择的测试功能点经过负荷测试和长时间测试后不能重现系统问题,如内存溢出,速度慢等问题;
选择测试功能点的原则:
客户使用系统时经常操作的业务流,以及觉得反应比较慢的几个功能模块。
2)不是在实际环境中的测试(即模拟的测试环境和客户实际使用环境配置差别较大),由于测试环境的不同,测试结果和实际使用环境中的结果有一定的出入。
3)测试环境中的数据量比实际环境中使用一段时间后的数据量要少的多,系统目前的性能不能代表数据量增长后的性能。
7.测试设计策略
7.1.关键资源不处于阻塞状态
Ø应用服务器CPU利用率<80%
Ø网络流量<(?
)
Ø物理内存不能耗尽,利用率<80%
Ø响应时间<15s
7.2.组合测试用例策略
先单个测试用例在不同的场景下并发测试,再组合多个测试用例同时并发多用户长时间测试。
即:
先单独执行检测数据录入用例、数据查询用例、数据统计报表用例、检测统计用例。
最后组合执行上面4组用例,同时并发执行12小时。
7.3.测试执行策略
在正常的生产数据下,采用阶梯式的方式,分别使用并发用户60、80、100个进行测试。
如果在某一个并发用户数,如80个并发用户测试时,发现性能下降,那么则逐步减少并发数,以找出并发用户达到什么数目时,系统性能开始急剧下降。
8.测试用例
8.1.大量并发用户登录平台用例
用例编号
FSMIS_login_001
脚本名称
login
测试目的
验证大量用户并发登陆平台时,系统性能反应情况
测试数据及条件
1)拥有足够权限的用户帐号与密码;
脚本描述
录制步骤
1)登陆
1.在虚拟用户脚本中,切换为vuser_Action;
2.打开登陆界面,输入用户帐号、密码,插入集合点login,插入事务user_login开始点,点击“登陆”按钮;
3.进入某某系统;
4.插入事务user_login结束点。
2)退出系统
1.在虚拟用户脚本中,转到vuser_end
2.在系统的状态区,选择“注销”按钮,退出系统。
事务
user_login(并发用户登录)
测试场景描述
1.60个虚拟用户并发,在60个用户同时到达集合点处同时释放,设置一开始就加载所有用户;
2.80个虚拟用户并发,在80个用户同时到达集合点处同时释放,设置一开始就加载所有用户;
3.100个虚拟用户并发,在100个用户同时到达集合点处同时释放,设置一开始就加载所有用户。
测试结果验证
在测试场景之下,登陆系统正常,登陆响应时间在用户接受的范围内。
8.2.功能点2用例
用例编号
FSMIS_input_001
脚本名称
input
测试目的
验证大量用户并发录入检测数据时,系统性能反应情况
测试数据及条件
1)拥有足够权限的用户帐号与密码(省级账号不用录入数据);
2)登陆用户存在“所属市场”、“检测仪器”等录入数据时所必需的数据项。
脚本描述
录制步骤
1)登陆
1.在虚拟用户脚本中,切换为vuser_init。
2.打开登陆界面,输入用户帐号、密码,登陆。
3.进入某某系统。
2)录入检测数据
1.在虚拟用户脚本中,切换为Action。
2.在“检测管理系统”模块中,点击“检测数据录入”。
3.录入检测数据记录,插入集合点input,插入check_input事务开始点,点击“添加数据”按钮。
4.插入check_input事务结束点。
3)退出系统
1.在虚拟用户脚本中,转到vuser_end
2.在系统的状态区,选择“注销”按钮,退出系统。
事务
check_input(检测数据录入)
测试场景描述
1.60个虚拟用户并发。
2.80个虚拟用户并发。
3.100个虚拟用户并发。
测试结果验证
在每个测试场景之下,登陆正常,功能正常,系统不崩溃,资源使用情况不处于阻塞状态(见测试设计策略中的阻塞定义)。
8.3.功能点3用例
用例编号
FSMIS_select_001
脚本名称
select
测试目的
验证大量用户并发查询检测数据记录时,系统性能反应情况
测试数据及条件
1)拥有足够权限的用户账号与密码(选择省、市、区各一个账号)。
2)数据库中有足够多的数据,保证数据库的记录保存最近三个月的数据量。
脚本描述
录制步骤
1)登陆
1.在虚拟用户脚本中,切换为vuser_init。
2.打开登陆界面,输入用户账号、密码,登陆。
3.进入某某某系统。
2)查询检测数据记录
1.在虚拟用户脚本中,切换为Action。
2.在“某某某”模块中,点击“数据查询”。
3.输入查询条件(跨度3个月,其它条件为空),插入集合点select,插入check_select事务开始点,点击查询按钮。
4.插入check_select事务结束点。
3)退出系统
1.在虚拟用户脚本中,转到vuser_end
2.在系统的状态区,选择“注销”按钮,退出系统。
事务
check_select(查询数据记录)
测试场景描述
1.60个虚拟用户并发。
2.80个虚拟用户并发。
3.100个虚拟用户并发。
测试结果验证
在每个测试场景之下,登陆正常,功能正常,系统不崩溃,资源使用情况不处于阻塞状态(见测试设计策略中的阻塞定义)。
8.4.功能点4用例
用例编号
FSMIS_analysis_001
脚本名称
analysis
测试目的
验证大量用户并发报表时,系统性能反应情况
测试数据及条件
1)拥有足够权限的用户账号与密码;
2)数据库中有足够多的检测数据(确保某一年12个月内,每个月都有部分检测数据)。
脚本描述
录制步骤
1)登陆
1.在虚拟用户脚本中,切换为vuser_init。
2.打开登陆界面,输入用户账号、密码,登陆。
3.进入某某某系统。
2)查询负荷数据
1.在虚拟用户脚本中,切换为Action;
2.在“某某某”模块中,选择“数据统计”,点击“报表”;
3.输入统计条件(某一年,从一月到十二月),插入集合点analysis,插入month_analysist事务开始点,点击查询按钮。
4.插入month_analysis事务结束点。
3)退出系统
1.在虚拟用户脚本中,转到vuser_end
2.在系统的状态区,选择“注销”按钮,退出系统。
事务
Month_analysis(月报表)
测试场景描述
1.60个用户并发。
2.80个用户并发。
3.100个用户并发。
测试结果验证
在每个测试场景之下,登陆正常,功能正常,系统不崩溃,资源使用情况不处于阻塞状态(见测试设计策略中的阻塞定义)。
8.5.功能点5用例
用例编号
FSMIS_statistic_001
脚本名称
statistic
测试目的
验证大量用户并发查询机构树时,系统性能反应情况
测试数据及条件
1)拥有足够权限的用户帐号与密码
2)用户账号有所有数据的数据权限
脚本描述
录制步骤
1)登陆
1.在虚拟用户脚本中,切换为vuser_init。
2.打开登陆界面,输入用户账号、密码,登陆。
3.进入某某某系统。
2)查询表计
1.在虚拟用户脚本中,切换为Action。
5.在“某某系统”模块中,选择“数据统计”,点击“统计表”;
2.输入查询条件,插入集合点statisticl,插入count_statistic事务开始点,点击查询按钮。
3.插入count_statistic事务结束点。
3)退出系统
1.在虚拟用户脚本中,转到vuser_end
2.在系统的状态区,选择“注销”按钮,退出系统。
事务
count_statistic()
测试场景描述
1.60个用户并发。
2.80个用户并发。
3.100个用户并发。
测试结果验证
在每个测试场景之下,登陆正常,功能正常,系统不崩溃,资源使用情况不处于阻塞状态(见测试设计策略中的阻塞定义)。
8.6.组合用例
用例编号
FSMIS_association_001
脚本名称
无
测试目的
验证同时大量用户并发,数据录入、数据查询、统计报表、统计表操作时,系统性能反应情况。
测试数据及条件
参见测试用例8.2、8.3、8.4、8.5测试数据及条件。
脚本描述
录制步骤
详细请见测试用例8.2、8.3、8.4、8.5录制步骤
事务
详细请见测试用例8.2、8.3、8.4、8.5录制事务
测试场景描述
1.80个用户并发,即:
以上4各用例各并发20,循环20次,每15秒递增4个用户。
2.120个用户并发,即:
以上4各用例各并发30,循环20次,每15秒递增4个用户。
3.160个用户并发,即:
以上4各用例各并发40,循环20次,每15秒递增4个用户。
4.100个用户并发,即:
以上4各用例各并发25,循环1000次,每15秒递增4个用户。
(长时间)
测试结果验证
在每个测试场景之下,登陆正常,功能正常,系统不崩溃,资源使用情况不处于阻塞状态(见测试设计策略中的阻塞定义)。
9.任务与进度表
序号
任务描述
负责人
时间
1
制订性能测试方案
2
测试准备
3
测试环境服务器
4
测试环境客户端
5
录制脚本及调试
6
准备登陆用户
7
准备好测试数据
8
在各客户端设置好存放脚本、场景、数据及测试结果的路径
9
性能测试执行
10
性能调优
11
服务器性能监控
12
查看验证执行的正确性
13
收集性能测试结果
14
对不需要安装LoadRunner的客户端,卸载LoadRunner。
15
删除测试客户端工作数据
16
性能测试结果分析,给出测试报告
10.提交的文档和报告
测试方案
测试报告
测试脚本