项目测试工作指导性方案(LoadRunner 8)

发表于:2008-7-23 15:33

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:wader    来源:百度BLOG

分享:

  脚本录制
  录制原则
  脚本越小越好。就像写code一样的,不要太长,尽量做到一个功能(Transaction)一个脚本
  选择使用频率最高的。有些人喜欢在LR中测试几乎所有的功能,其实这样不合适,我们把最常用的、使用频率最高的、拿出来测试
  选择你所需要的进行录制。对于WEB的程序,对于你所关注的内容没什么影响的操作,你可以不录制,可以使用暂停,这需要试的, 对被测功能有一个清楚的认识和了解,要能把握住哪些地方是对整个过程没有影响的

  录制脚本中的几个概念
  事务:在action的开始和结束位置插入这样一个执行的范围,这就定义了一个事务(transaction),LoadRunner 运行到该事务的开始点时,LoadRunner 就会开始计时,直到运行到该事务的结束点,计时结束。这个事务的运行时间在结果中会有反映。
  集合点:在LoadRunner中可以通过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,LoadRunner 就会检查同时有多少用户运行到集合点,如果不到指定人数,LoadRunner就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到指定人数时,LoadRunner 命令这些指定人数同时去提交数据,并发访问的目的插入集合点是为了衡量在加重负载的情况下服务器的性能情况。
  注意:集合点只能插入到Action 部分,vuser_init和vuser_end 中不能插入集合点。
  具体的操作方法如下:在需要插入集合点的前面,通过菜单或者工具栏操作:输入该集合点的名称。
  注意:集合点的名称最好要有意义,能够清楚的说明该集合点完成的动作。
  脚本中集合点的代码:Ir_rendezvous(“SubmitQueryData”)
  IP 欺骗:当运行场景时,虚拟用户使用它们所在的Load Generator 的固定的IP 地址。每个Load Generator 上(同时)运行大量的虚拟用户(*不明白),这样就造成了大量的用户使用同一IP 同时访问一个网站的情况,这种情况和实际运行的情况不符,并且有一些网站会限制同一个IP 的登陆。为了更加真实的模拟实际情况,LoadRunner允许运行的虚拟用户使用不同的IP 访问同一网站,这种技术称为“IP 欺骗”
  contents check点:因为LR只要检测到网页的响应,就认为是pass而并不管当前网页内容的正确性.在进行压力测试时,为了检查Web服务器返回的网页是否正确,VuGen允许我们插入Text/Imag 检查点,这些检查点验证网页上是否存在指定的Text或者Image,还可以测试在比较大的压力测试环境中,被测的网站功能是否保持正确。
  Correlation(关联):关联是用来解决脚本中存在的动态数据问题的,当你回放一次后,LR会自动录找你录制的时候和回放时候的差别,找出动态数据,并作成参数。

  脚本录制:LR的脚本是C语言代码,LR有自己的一整套函数接口,可以供外部调用,在VUGen里面敲Lr_就可以看到了。Web(Http/Html)脚本本身分INIT,ACTION,END三部分,各部分的解释:INIT部分可以理解为初始部分,ACTION可以理解为事务部分,也是测试的主体,END是退出结束。重复的时候,仅重复action部分。我们一般把登录部分放在init,退出放到end,只会执行一次,或者有的时候,各部分反复的次数不一样,分成多个action,可以单独设定反复次数。(如果需要在登陆操作设集合点,那么登陆操作也要放到Action 中,因为vuser_init 中不能添加集合点)

  脚本的参数化:每次脚本被虚拟提交时,如果提交的参数被录制了,那么系统会有一些限制或不能达到预期的测试效果,所以把脚本中需要客户提交的参数的值预定义一些虚值,这样会更加真实反映模拟实际环境,达到预期的测试效果。
选择脚本中的value值,右键“Replace with a parameter”

  怎样录制脚本
  打开菜单,或是新建图标;
  填入测试地址,以及ACTION名
  完成操作过程,停止录制;

  插入text/image检查点
  前面说到内容检查对测试具有的作用,在这里了解一下这个检查功能的设置方法;
  选择插入功能点:
  右键“insert after”
  添加一个文本检查功能;
  配置文本串和搜索条件;
  定义一个检查的名称

  设置集合点
  选择插入集合点的位置,集合点设置必须在actiom里;
  定义集合点名称,必须描述清楚集合点的内容
  查看集合点状态;
  设置集合点策略;
  脚本运行的时候,在这里可以看到VU的状态;

  添加虚拟IP操作
  打开IP wizard工具
  添加一个段的IP地址:
  描述并添加IP
  打开虚拟IP设置

  创建测试场景
  场景的类型
  Manual Scenario:该项要完全手动的设置场景,这项下面还可以设置为每一个脚本分配要运行的虚拟用户的百分比,可在Controller的Scenario菜单下设置。
  Goal—Oriented Scenario:如果你的测试计划是要达到某个性能指标,比如:每秒多少点击,每秒多少transactions,能到达多少VU,某个Transaction在某个范围VU(500-1000)内的反应时间等等,那么就可以使用面向目标的场景。

  配置行运时环境
  带宽设置:模拟带宽环境,最大带宽,用户自定义,预选带宽
  杂项设置
  偏好属性设置
  模拟延时操作设置

  创建一个场景
  选择手动方式创建场景,设置VU为1,本地生成VU,组名为SINA,结果目录设置
  编辑测试的进度表,点击“ edit schedule”

  进度模式的设置
  Design:设计测试场景的静态部分,设置模拟用户生成器、模拟用户数量、 模拟用户组等。
  Run:设计测试的动态部分,主要指添加性能计数器,在脚本运行的过程中可以通过这些计数器反馈的数据。

  添加测试策略
  添加测试代理:添加VU用户生成器,可以是本地,也可以是虚拟IP,或是其它客户端;
  设置虚拟用户数:为单个组设置VU数,并进行相关设置;
  添加测试策略组:测试场景:添加测试组,选择脚本,设置VU用户数,以及生成器来源;

  行运场景,产生结果(LoaderRunner Controller)
  运行测试,显示用户在线信息,场景状态,可用的图表列表,常用图表(VU数,响应时间,点击数,系统状态)
  添加系统监视;

  测试结果分析(LoaderRunner Analysis)
  分析总结报告
  虚拟用户运行状态图
  每秒点击数
  每秒字节吞吐量
  事务处理总结分析图
  分析事务的响应时间

22/2<12
精选软件测试好文,快来阅读吧~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号