loadrunner,怎么根据判断结果,执行含有不同参数的代码段
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了loadrunner,怎么根据判断结果,执行含有不同参数的代码段相关的知识,希望对你有一定的参考价值。
比如,if判断结果是1,执行含有参数1的代码段,这一段代码里仅仅是参数不同而已
if(a==1)......para1......;
if(a==2)......para2......;
if(a==3)......para3......;
......
因为只有para1这样的参数有变,其他代码量比较大,又完全一样,所以我想把这段代码做一个函数,,放在action()...的下面:
param(para2).....para2.....
然后action里只用根据传参来调用param()即可,但是直接用类似于para2来做传参,会报错。
请问大神,应该怎么解决这个问题
添加的代码根据你检查的方式不同而不同, 你可以选择其中之一即可。
代码一:
web_reg_find("Text=Payment Details",LAST);
注:“Payment Details” 为你要检查的文本;
脚本执行到此处,若在页面上找到了这几个字符串,那脚本继续执行下去;若没有找到,脚本将在此报错并且结束。
代码二:
web_reg_find("Text=Payment Details", "SaveCount=para_count", LAST); //check 的函数
这里是要运行的页面脚本
if (atoi(lr_eval_string("para_count"))>0) //验证是否找到了页面上的要检查的字符串
lr_output_message("Pass!");
else
lr_output_message("Failed!");
注意:
“Payment Details” 为你要检查的文本;
脚本执行到此处,不管页面上是否存在你要检查的字符串,脚本都不会报错,而是执行下去。
此段代码将找到的你要检查的字符串的个数,存为一个参数。 然后在页面代码的后面,通过检查这个参数的值是否大于0,来判断是否找到了你所要检查的字符串。
注意:这里的测试结果均以200状态码返回,其失败的结果将在分析报告中进行分类标识。
代码三:
web_reg_find("Text=Payment Detdils", "Fail=NotFound",LAST);或者
web_reg_find("Text=Payment Detdils", "Fail=Found",LAST);
以上两段脚本就比较简洁,通过查询文本内容来决定此次运行的测试结果是否失败。
注意:在使用检查点的时候我们还需要注意一些问题,通常我们都要设置一些中文检查点,但是LR默认不支持,如果你设置了中文检查点而报错,那你就应该注意了,在录制脚本的时候去掉默认设置的UTF-8选择,如下图所示:
并且还设置启用图片和文本检查点,如下图所示:
以上就是设置检查点的全过程,设置检查点的目的不只是为了验证我们的脚本没有错误,而更重要的是一个规范问题,如何使得测试结果更具有说服力,那就所有的测试脚本中都添加检查点设置。 参考技术A char test[10];//定义一个变量
if(a==1)test = para1;
if(a==2)test = para2;
if(a==3)test = para3;
lr_save_string(test,"param");//把变量赋值给参数param
......param......;本回答被提问者采纳
Loadrunner压测结果性能问题分析指标项
事务分析内容:用户事务分析是站在用户角度进行的基础性能分析。
1、Transation Sunmmary(事务综述)
对事务进行综合分析在一定测试时间内用户事务的成功与失败情况,判断系统是否正常运行。
2、Average Transaciton Response Time(事务平均响应时间)
测试场景运行期间的事务执行所用的平均时间,通过它可以分析测试场景运行期间应用系统的性能走向。
3、Transactions per Second(每秒通过事务数)
在场景运行的每1秒每个事务通过、失败以及停止的数量,分析TPS主要是看曲线的性能走向。
例:当压力加大时,点击率/TPS曲线如果变化缓慢或者有平坦的趋势,很有可能是服务器开始出现瓶颈。
4、Total Transactions per Second(每秒通过事务总数)
显示在场景运行时,在每一秒内通过的事务总数、失败的事务总署以及停止的事务总数。
5、Transaction Performance Sunmmary(事务性能摘要)
事务性能摘要:显示所有事务的最小、最大和平均执行时间,可以直接判断响应时间是否符合用户的要求。
6、Transaction Response Time Under Load(事务响应时间与负载)
“事务响应时间与负载”是“正在运行的虚拟用户”图和“平均响应事务时间”图的组合,通过它可以看出在任一时间点事务响应时间与用户数目的关系,从而掌握系统在用户并发方面的性能数据,为扩展用户系统提供参考。
Web资源分析内容:
1、Hits per Second(每秒点击次数)
“每秒点击次数”,即使运行场景过程中虚拟用户每秒向Web服务器提交的HTTP请求数。
2、Throughput(吞吐率)
“吞吐率”显示的是场景运行过程中服务器的每秒的吞吐量。其度量单位是字节,表示虚拟用在任何给定的每一秒
从服务器获得的数据量。
可以依据服务器的吞吐量来评估虚拟用户产生的负载量,以及看出服务器在流量方面的处理能力以及是否存在瓶颈。
3、HTTP Status Code Summary(HTTP状态代码概要)
“HTTP状态代码概要”显示场景或会话步骤过程中从Web服务器返回的HTTP状态代码数,
该图按照代码分组。 HTTP状态代码表示HTTP请求的状态,类似如下:
2xx - 成功
3xx - 重定向
4xx - 客户端错误
500 - 内部服务器错误。*
4、HTTP Responses per Second(每秒HTTP响应数)
每秒HTTP响应数:是显示运行场景过程中每秒从Web服务器返回的不同HTTP状态代码的数量,
还能返回其它各类状态码的信息,通过分析状态码,可以判断服务器在压力下的运行情况。
5、Pages Downloader per Second(每秒下载页面数)
每秒下载页面数:每一秒内从服务器下载的网页数。使用此图可依据下载的页数来计算Vuser生成的负载量。
6、Retries per Second(每秒重试次数)
“每秒重试次数”显示场景或会话步骤运行的每一秒内服务器尝试的连接次数。
在下列情况将重试服务器连接:
A、初始连接未经授权
B、要求代理服务器身份验证
C、服务器关闭了初始连接
D、初始连接无法连接到服务器
E、服务器最初无法解析负载生成器的IP地址
7、Connections(连接数)
连接数:显示场景或会话步骤运行过程中每个时间点打开的TCP/IP连接数。借助此图,
可以知道何时需要添加其他连接。
8、Connections Per Second(每秒连接数)
每秒连接数:显示在运行过程中每秒建立的TCP/IP连接数。
9、SSLs Per Second(每秒SSL连接数)
每秒SSL连接数:显示场景或会话步骤运行的每一秒内打开的新的以及重新使用的SSL连接数。
当对安全服务器打开TCP/IP连接后,浏览器将打开SSL连接。
网页元素细分项:
1、Download Time Breaddown(下载时间细分)
下载时间细分:图显示网页中不同元素的下载时间,同时还可按照下载过程把时间进行分解,
用不同的颜色来显示DNS解析时间、建立连接时间、第一次缓冲时间等各自所占比例。
2、Component Breakdown(Over Time)(组件细分(随时间变化))
组件细分:显示选定网页的页面组件随时间变化的细分图。通过该图可以很容易的看出哪些
元素在测试过程中下载时间不稳定。
3、Download Time Breakdown(Over Time)(下载时间细分(随时间变化))
下载时间细分: 图显示选定网页的页面元素下载时间细分情况,它非常清晰地显示了页面各个
元素在压力测试过程中的下载情况。
4、Time to First Buffer Breakdown(Over Time)(第一次缓冲时间细分(随时间变化))
第一次缓冲时间细分:显示成功收到Web服务器返回的第一次缓冲之前的这段时间,
场景或会话步骤运行的每一秒中每个网页组件的服务器时间和网络时间(以秒为单位)。
可以使用该图确定场景或会话步骤运行期间服务器或网络出现问题的时间。
First Buffer Time:是指客户端与服务器端建立连接后,从服务器发送第一个数据包开始计时,
数据经过网络传送到客户端,到浏览器接收到第一个缓冲所用的时间。
5、Page Component Breakdown(页面组件细分)
页面组件细分:图显示每个网页及其组件的平均下载时间(以秒为单位)。
6、Page Component Breakdown(Over Time)(页面组件分解(随时间变化))
页面组件分解(随时间变化):图显示压测运行期间的每一秒内每个网页及其组件的平均响应时间 (以秒为单位)。
7、Page Download Time Breakdown(页面下载时间细分)
页面下载时间细分:图显示每个页面组件下载时间的细分,可以根据它确定在网页下载期间事务响应
时间缓慢是由网络错误引起还是由服务器错误引起。
8、Page Download Time Breakdown(Over Time)(页面下载时间细分(随时间变化))
页面下载时间细分:显示压测运行期间,每一秒内每个页面组件下载时间的细分。
9、Time to First Buffer Breakdown(第一次缓冲时间细分)
第一次缓冲时间细分:显示成功收到从Web服务器返回的第一次缓冲之前的这一段时间内的每个
页面组件的相关服务器/网路时间。如果组件的下载时间很长,则可以使用此图确定产生的问题与
服务器有关还是与网络有关。
网络时间:定义为第一个HTTP请求那一刻开始,直到确认为止所经过的平均时间。
服务器时间:定义为从收到初始HTTP请求确认开始,直到成功收到来自Web服务器的一次缓冲为止所经过的
平均时间。
10、Downloader Component Size(KB)(已下载组件大小)
已下载组件大小:显示每个已经下载的网页组建的大小。
以上是关于loadrunner,怎么根据判断结果,执行含有不同参数的代码段的主要内容,如果未能解决你的问题,请参考以下文章