51Testing软件测试论坛

标题: 五:Load Runner 中常用函数的解释 [打印本页]

作者: OneDate    时间: 2017-8-29 19:25
标题: 五:Load Runner 中常用函数的解释
今天我们来讨论一下,在使用Load Runner的VuGen录制脚本的时候,使用到的一些函数,以便增强我们脚本的健壮性。以下的言论只是本人自己在学习过程中总结出现来的,有什么不对的地方,希望大家一块进行讨论,进步。
1.事务和控制事务:
       事务是从一开始执行,就必须运行完成。我们可以将一个具体的操作定义成为一个事务来进行操作,比如登录,我们将登录的操作放到一个事务中,很好能够体现出登录的响应时间。系统的性能就是依靠一个个的事务来组成的。
   函数;1> lr_start_transaction(“事务的名称”):标记事务开始的函数
           2> lr_end_transaction(“事务结束的标记,必须与事务开始的名称一致”,事务结束的方式):标记事务结束的函数。
                              事务结束的三种标记:
                                                (1)lr_end_transaction("事务的名称",LR_AUTO):自动结束 不判断 正确或错误
                                                 (2)lr_end_transaction("事务的名称",LR_PASS);:以成功状态结束
                                                (3)lr_end_transaction("事务的名称",LR_FAIL);以失败的状态结束
           3> lr_get_transaction_duration("事务的名称"):获取事务的响应时间。开始到结束
2.集合点函数:集合点开始的标志
   设置集合点可以是我们的并发访问更加的真实,
  函数:
        lr_rendezvous("集合点名称"):将要进行下一步操作的用户集合起来。
4.检验是否显示正确的函数:(为了验证我们一下不的操作是否正确,可以使用下面的函数进行验证,将出现特定的数据的左右边界值给固定检查)
   web_reg_save_param("YanZheng",
                "LB=<small><B>",
                "RB=</B></small>",
                LAST);//放在需要验证的事务的前面
5.验证是否返回了正确的函数;(我们使用下面的方法来验证上面要检查的正确的数据)
      if(strstr(lr_eval_string("{YanZheng}"),"Thank you for booking through Web Tours.")!=NULL)
              {
                    lr_end_transaction("事务的名称",LR_PASS);//事务成功
                    lr_output_message("写入想要打印的文字提示:%s,写入想要打印的文字提示:%s",
                    lr_eval_string("{想要输出的参数化的名称}"),lr_eval_string("{想要输出的参数化的名称}"));

        }else{
                  lr_end_transaction("事务的名称",LR_FAIL);//事务失败(没有找到我们的检查点)
                  lr_output_message("想要输出日志提示");//lr中log的打印形式
        }

6.验证输出日志函数:可以帮助我们很好的打印出我们想要的信息,进行优化脚本
      1>lr_debug_message:将调试消息发送到输出窗口
      2>lr_error_message:将错误消息发送到输出窗口
      3>lr_get_debug_message:检索当前的消息类
       4>lr_log_message:将输出消息直接发到output.txt文件中,此文件位于Vuser脚本目录中。该函数有助于防止输出消息干扰TCP/IP通信。
       5>lr_output_message:将消息发送到输出窗口lr_set_debug_message/为输出消息设置消息类。
      6>lr_vuser_status_message:生成格式化输出并将其打印到ControollerVuser状态区
      7>lr_message:将消息发送到Vuser日志和输出窗口。
7.子事务的函数
    1> lr_start_sub_transaction: 标记子事务的开始
     2> lr_end_sub_transaction :标记子事务的结束以便进行性能分析
8.获取事务的时间的函数
    1>  lr_get_transaction_duration: 获取事务的持续时间(按事务的名称)
    2> lr_get_transaction_think_time: 获取事务的思考时间(按事务的名称)
    3> lr_get_transaction_wasted_time: 获取事务浪费的时间(按事务的名称)
9.检索脚本中出现的数据类型的事务:
    1> lr_save_datetime:把当前时间和日期保存到一个参数中
    2> lr_save_int:把一个整数保存为参数
    3> r_save_senarched_string:保存一个字符串数组对于字符串出现的部分
    4> lr_save_var:把字符串的一部分内容保存为参数。
    5> lr_save_string:把一个字符串保存到参数中。
    6> lr_eval_string:返回参数的实际内容或返回一个包含参数的字符串的实际内。

在这我只是将学习中接触到的一些函数方法给列了出来,当然lr中还有很多函数能够帮助我们,大家一块探讨,会进步更快。
在这我附加上我前几篇的地址,希望能够给大家带来帮助:
一:http://bbs.51testing.com/thread-1139208-1-1.html
二:http://bbs.51testing.com/thread-1139272-1-1.html
三:http://bbs.51testing.com/thread-1139305-1-1.html
四:http://bbs.51testing.com/thread-1139338-1-1.html


写的有什么不对的地方希望大家发出来一块讨论一下,也希望大牛们给提点建议,哈哈!!!


       




作者: lsekfe    时间: 2017-8-30 09:21
感谢分享!很不错!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2