使用LoadRunner来测试BEA TUXEDO

发表于:2011-12-28来源:未知作者:娃娃点击数: 标签:loadrunner
LoadRunner是一种预测系统行为和性能的工业标准级负载测试工具。它通过模拟数据以千万计用户来实施并发负载来对整个企业架构进行测试,来帮助您更快的查找和发现问题。 关于LoadRunner更全面的描述及使用,请参考《LoadRunner 使用手册》

  LoadRunner®是一种预测系统行为和性能的工业标准级负载测试工具。它通过模拟数据以千万计用户来实施并发负载来对整个企业架构进行测试,来帮助您更快的查找和发现问题。

  关于LoadRunner®更全面的描述及使用,请参考《LoadRunner 使用手册》或Mercury Interactive 公司提供的联机帮忙文档。本文旨在帮助工程师们掌握使用LoadRunner®来测试BEA中间件产品的方法。

  一、如何使用LoadRunner来测试BEA TUXEDO

  1. LoadRunner的虚拟用户

  LoadRunner使用虚拟用户(Virtual users)来模拟实际用户对业务系统施加压力。虚拟用户在一个中央控制器(controller station)的监视下工作。如下图所示。

  在做一个测试方案时,要做的第一件事就是创建虚拟用户执行脚本。LoadRunner提供了Virtual User Generator来录制或编辑虚拟用户脚本。

  2. 使用Vugen创建虚拟用户执行脚本

  A.从菜单中选择运行Virtual User Generator:

  B.创建一个单协议脚本,选择协议类型为"Tuxedo 7"

  C.选择工具条中的"

  "来录制一个脚本,在弹出的窗口中输入Tuxedo客户机程序的可执行文件名(SimpApp.exe),并选择"Record into Action"为Action。如下图所示:

  点击"OK"开始录制脚本,这时Vugen就会启动Simpapp.exe,如下图所示,输入WSNADDR,输入字符串(Tuxedo is powerful!)之后,点击TOUPPER,TUXEDO服务器完成请求后把输出字符串(TUXEDO IS POWERFUL!)写到"Output string"中,点击停止录制按钮。

  D.编辑Vuser脚本。我们在C中做的所有操作都被录了下来,记录到一个脚本文件中,其内容如下,我们把它存为simpapp。

  脚本内容如下:

cccccc" border="0" cellpadding="0" cellspacing="5" class="content" width="80%">
/* This file is generated by LoadRunner. You may edit it carefully! */
#include "lrt.h"
#include "replay.vdf"

Actions()
{
lrt_tuxputenv("WSNADDR=//172.22.32.25:7110");

lr_think_time(3);
tpresult_int = lrt_tpinitialize(LRT_END_OF_PARMS);
lrt_abort_on_error();
data_0 = lrt_tpalloc("STRING", "", 1);

/* Request STRING buffer 1 */
lrt_strcpy(data_0, sbuf_1);
data_1 = lrt_tpalloc("STRING", "", 1);
tpresult_int = lrt_tpcall("TOUPPER",
data_0,
0,
&data_1,
&olen,
0);
/* Reply STRING buffer 1 */
lrt_abort_on_error();

lrt_tpfree(data_0);
lrt_tpfree(data_1);
lrt_tpterm();

return 0;
}

  代码中加粗的函数是LoadRunner对TUXEDO函的二次包装。

  E.点击工具栏中的"

  "按钮来执行我们刚才录制的脚本,确保执行无误。

  3. 使用控制器(Controller)来调度虚拟用户

  A.从菜单中选择运行Controller:

  B.创建一个新的Scenario,选择刚才录制的脚本(simpapp):

  点击"OK",弹出Scenario调度界面,如下图所示。在"Quantity"中输入100,表示使用100个虚拟用户。(虚拟用户与购买的LICENSE有关联)

  C.点击"Edit Schedule"来编辑压力调度。

  D.选择"Runtime settings"来作运行时设置

  在Pacing的设置中,"Number of Iterations"用于设置Vusers的Actions被执行的次数;"Start new iteration"用于设置调度器在什么时机迭代执行Vusers的Actions。

原文转自:http://www.ltesting.net