掌握验证软件系统是否能够达到用户提出的性能指标;性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试,评估系统的能力----测试中得到的负荷和响应时间数据可被用于验证所计划的模型的能力,并帮助作出决策。识别体系中的弱点----受控的负荷被增加到一个极端水平,并突破它,从而修复体系的瓶颈或薄弱的地方;系统调优---重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性能。检测软件中的问题,长时间的测试执行可导致程序发生由于内存泄漏引起的失败,揭示程序中的隐含问题或冲突;验证稳定性,可靠性---在一个生产负荷下执行测试一定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法。
1、完整的性能测试流程,包括性能需求分析和测试计划制定,测试用例设计和脚本开发,测试场景设计和测试场景执行,性能测试指标统计。
2、基于工具和企业项目的性能测试:采用市场占有高的性能测试工具PerformenceRunner和企业真实的被测项目如《搜车网》、《crm客户管理系统》、《云检测平台》、《图书管理系统》、《仓库管理系统》;紧密围绕性能测试的企业及运用的测试规范,让同学们学完后能直接上手企业项目测试
3、基于代码的性能测试基于代码的性能测试框架PerformanceRunner,能有效对接fiddler项目脚本,提高脚本的利用率简化脚本的维护难度,降低时间成本提高并发效率和测试的精确度。
测试脚本构成:
性能测试工作原理:
性能测试流程:
性能测试执行:
性能指标统计:
1.PerformanceRunner的工具界面:
1.1.工具栏:
1.2.快捷按钮:
1.3.项目管理器:
1.4.脚本编辑区域:
1.5.脚本输出区域,显示脚本的执行结果:
1.6.执行器:
执行器是PR的测试场景设计和执行容器。
1.7.分析器:
性能测试场景执行完成后,在分析器内将性能测试指标逐项显示,为性能分析提供数据支撑。
2.性能测试项目过程:
2.1.性能测试也是根据测试需求来进行的。例如我们在对一个网站类被测系统上线前的系统性能做一个评测,首先是找到系统的大并发。这里我们以找出被测系统登录功能所能承受的大并发为例子来分析PR在性能测试过程中的运用。
2.1.1测试脚本的录制回放:
2.1.1.1.新建项目:
2.1.1.2.录制脚本:点击红色的录制按钮,在弹出的录制信息对话框里选择需要录制的协议,这里我们选择一个http协议的网站搜车网;然后选择需要录制的程序,这里选择ie浏览器的绝对安装路径;在程序的输入参数这一栏输入被测系统的URL;点击确定后开始录制脚本。这里脚本的录制是通过兼听浏览器与服务器之间的通信信息包解析成PR的测试脚本。
2.1.1.3.脚本回放和关联:
脚本回放:
关联:
2.1.1.4.参数化:
在性能测试过程中要尽量真实模拟现实环境和真是用户的操作,在登录过程中,不同的用户使用不同的用户名和密码登录,在此我们对用户名和密码进行参数化。
搜车网可用的用户名密码:admin@souche.com 888888; shellslow@126.com 888888; shellslow@sina.com 888888;274159756@qq.com 888888;
脚本参数化后的脚本为:
pr.http_postVerb("login.do",
"http://localhost:8088/souche/login.do",
"http://localhost:8088/souche/userLogin.do?redirect_url=/souche/manage.do",
"loginId="+pr.getParamValue("name")+"&password="+pr.getParamValue("pwd")+"");
红色标记是脚本参数化命令,里面共有两个变量,name和pwd。
编辑参数表:
2.1.1.5.添加事务:
添加事务主要是把关注的功能点设为事务,这样在执行测试的时候可以把事务的性能指标单独统计出来供分析使用。
插入事务的起始标记:
插入事务的结束标记:
4.1.1.6.添加注释:
4.1.2.场景设计:
4.1.2.1.压力测试场景:
为了保证在登录的时候的并发压力是真实的,我们在脚本对应位置添加集合点:
4.1.2.2.场景设计:
新建场景:
添加脚本:
设置启动虚拟并发数:
设置场景的运行持续时间:
设置停止并发:
点击运行并保存场景信息:
启动桌面的runAgent执行器:
点击开始按钮运行场景:
开始执行场景并监测性能指标:
结束后点击关闭,进入分析器。
4.1.3.进入分析器统计性能指标:
分析摘要:
运行的VU图:
事务概要图:
事务响应时间图:
每秒事务数图:
每秒事务总数图:
事务性能概要图:
每秒点击量图:
每秒吞吐量图: