技术开发 频道

基于LoadRunner12的性能测试

  • 2.场景设计与监控

  当Vuser Script开发完成后,使用Controller将这个执行脚本的用户从单人转化为多人,从而模拟大量用户操作以形成系统负载。场景是一种模拟大量用户操作的技术手段,通过配置和执行场景向服务器产生负载,监控系统的各项性能指标。

  1)场景设计

  通过对场景的设计,可以生成和用户需求相同的真实负载。场景分为目标场景和手动场景。一般地,我们使用使用自动场景来进行验收测试,使用手动场景来定位性能瓶颈。

  目标场景:

  通过设置一个运行目标,Controller会自动逐渐增加负载,测试系统能否稳定达到预期目标。如果达标则说明系统的性能符合测试目标,否则提示无法达标。自动场景是定性型性能测试,我们只关心最后性能测试的结论是否符合性能需求。

  自动场景提供了5种目标:

  • 1.虚拟用户(Vitual Users):指被测系统所需要支持的用户数;

  • 2.每秒点击数(Hits Per Second):指在1秒内能做到的点击请求数;

  • 3.每秒事务数(Transactions Per Second):反映了系统处理能力;

  • 4.事务响应时间(Transactions Response Time):单位秒,反映了系统的处理速度;

  • 5.每分钟页数(Pages Per Minute):指每分钟页面的刷新次数,反映系统每分钟能提供的页面处理能力。

  手动场景:

  自行设置Vuser的变换,通过增减Vuser来模拟真实的用户请求,完成负载的生成。手动场景是定量型性能测试,通过观察在负载增加过程中系统各个组件的变化情况,来定位性能瓶颈。

  在这里,我们对上述录制完成的脚本创建手动场景来进行性能测试,如图19。然后点击OK按钮进入Controller的场景设计主界面,如图20。


▲图19-创建手动场景


▲图20-场景设计主界面

  场景设计主界面主要包括以下3部分:

  1.Scenario Groups

  在这里可以添加多个脚本,并为每个脚本指定Vuser数目,添加目标LG,如图21、22所示。


▲图21-Scenario Groups


▲图22-添加目标LG

  2.Scenario Schedule

  对Global Schedule进行如下设置(将适用于该group中所有脚本):每隔1s初始化2个Vuser,总共10个Vuser。 Vuser入场时,每隔5s增加2个Vuser,在到达最多用户数时持续运行5min,Vuser退场时每隔5s减少2个Vuser。


▲图23-Scenario Schedule

  3.Interactive Schedule Graph

  在交互计划图中可以直观地显示场景计划的用户负载情况。如图23所示,Vuser数目先陆续增加,在第20s时到达峰值10并持续5min,然后逐渐减少至0,整个场景持续5min 40s。


▲图24-Interactive Schedule Graph

  2)场景监控

  完成场景设计后,点击Run标签页切换到场景监控主界面,如图25。在左侧Scenario Groups中列举了所有Vuser的运行状态;在右侧Scenario Status中列举了当前场景的运行情况;在下方Available Graphs中列举了所有可监控的计数器类型,通过添加计数器实例可以让LR监控其性能数据(如CPU、内存使用率等)。

  我们可以监控本地服务器或远程Windows/Linux/AIX服务器(监控Linux/AIX需要先安装rstatd组件)以及Weblogic/WebSphere等应用服务器的性能数据。


▲图25-场景监控主界面

  点击Start Scenario按钮执行场景,可以看到交互计划图开始变化,监控主界面的Vuser状态开始变化,Running Vuser开始增加,Transaction Graphs等计数器开始显示数据。


▲图26-交互计划图执行情况


▲图27-Running Vuser


▲图28-Transaction Graphs

  点击Vusers 按钮可以查看当前所有Vuser的状态,并可以在执行过程中通过Add Vuser及Stop Vuser来动态调整负载情况,如图29。选中Vuser,右键选择Show Vuser可以查看该Vuser真实的运行情况,如图30。


▲图29-动态调整负载


▲图30-查看Vuser运行情况


6
相关文章