一、基础函数

在VU左边导航栏中,有三个LR框架函数,分别是vuser_init(),Action(),vuser_end()。
这三个函数存在于任何Vuser类型的脚本中:
  ●vuser_init():虚拟用户的初始化函数,存放用户初始化操作,如登录、分配内存等。(只运行一次)
  ●Action:虚拟用户要做的业务,也就是测试内容的主体。参数化只对Action有效,Action重复运行。
  ●vuser_end():与init()相对,做收尾工作,如退出登录,free内存。(同样只运行一次)
 
在LR脚本中,我们可以调用三种函数:
  1.VU通用函数,一般以lr开头,如lr_start_transaction函数。
  2.协议相关函数,不同类型的Vuser的函数一般以本协议类型开头。如果脚本是Web(HTTP/HTML)类型的,web_url就是一个协议函数。
  3.语言相关函数。如VU脚本用C语言写的,那么C语言的标准函数库或DLL都可以在这里被加载和使用。
 

二、通用VU函数
  通用VU函数是构建在C语言基础之上的脚本框架函数,起支持作用。通用VU函数有一个特征,就是以LR开头,以标明它们属于LR,而不专属于任何协议,只要是C脚本,都可以使用。
  通用VU函数可分为:
  ●事务控制函数
  ●命令行分析函数
  ●系统信息函数
  ●字符串函数
  ●日志函数
  ●运行时函数
1.事务与事务控制函数
  软件系统的性能就是以一个个事务来度量的。LR中事务的定义就是靠事务函数来进行,在执行性能测试时,LR会采集完成其定义的每个事务所花费的时间,并在性能测试后在Analysis中进行统计分析
  ●lr_end_sub_transaction:标记子事务的结束以便进行性能分析。
  ●lr_end_transaction:标记LoadRunner事务的结束。
  ●lr_end_transaction_instance:标记事务实例的结束以便进行性能分析。
  ●lr_fail_trans_with_error:将打开事务的状态设置为LR_FAIL并发送错误消息。
  ●lr_get_trans_instance_duration:获取事务实例的持续时间。
  ●lr_get_trans_instance_wasted_time:获取事务实例浪费的时间。
  ●lr_resume_transaction:继续收集事务数据以便进行性能分析。
  ●lr_resume_transaction_instance:继续收集事务实例数据以便进行性能分析。
  ●lr_set_transaction_instance_status:设置事务实例的状态。
  ●lr_set_transaction_status:设置打开事务的状态。
  ●lr_set_transaction_status_by_name:设置事务的状态。
  ●lr_start_sub_transaction:标记子事务的开始。
  ●lr_start_transaction:标记事务的开始。
  ●lr_start_transaction_instance:启动嵌套事务。
  ●lr_stop_transaction:停止事务数据的收集。
  ●lr_stop_transaction_instance:停止事务数据的收集。
  ●lr_wasted_time:消除所有打开事务浪费的时间。
2.命令行分析函数
  当LoadRunner用命令行方式启动和运行时,以下函数用来分析命令行,以得到命令行中的参数信息。
  ●lr_get_attrib_double:检索脚本命令行中使用的double类型变量。
  ●lr_get_attrib_long:检索脚本命令行中使用的long类型变量。
  ●lr_get_attrib_string:检索脚本命令行中使用的字符串。
3.系统信息函数
  用来得到VU系统信息:
  ●lr_user_data_point:记录用户定义的数据采集点。
  ●lr_whoami:将有关Vuser的信息返回给Vuser脚本。
  ●lr_get_host_name:返回执行Vuser脚本的主机名。
  ●lr_get_master_host_name:返回运行LoadRunnerController的计算机名。
 
4.字符串函数
  主要是对参数进行操作,包括对不同类型参数的读取、存储和移动。
  ●lr_eval_string:返回参数的当前值。
  ●lr_save_string:将以NULL结尾的字符串保存到参数中。
  ●lr_save_var:将变长字符串保存到参数中。
  ●lr_save_datetime:将当前日期和时间保存到参数中。
  ●lr_advance_param:前进到下一个可用参数。
  ●lr_decrypt:解密已编码的字符串。
  ●lr_eval_string_ext:lr_eval_string的扩展,为指向包含参数数据的缓冲区的指针。
  ●lr_eval_string_ext_free:释放由lr_eval_string_ext分配的指针。
  ●lr_save_searched_string:在缓冲区中搜索字符串实例,并将改字符串实例保存到参数中。
5.消息函数
  是VU发送和记录log的函数
  ●lr_debug_message:将调试消息发送到输出窗口。
  ●lr_error_message:将错误消息发送到输出窗口。
  ●lr_get_debug_message:得到当前的消息类。
  ●lr_log_message:将输出消息直接发送到output.txt文件,此文件位于Vuser脚本目录中。
  ●lr_output_message:将消息发送到输出窗口。
  ●lr_set_debug_message:为输出消息设置消息类。
  ●lr_vuser_status_message:生成格式化输出并将其打印到ControllerVuser状态区域。
  ●lr_message:将消息发送到Vuser日志和输出窗口。
6.运行时函数
  运行时(run-time)多数是通过VU的runtime来设置的。
  ●lr_load_dll,加载外部dll。
  ●lr_think_time:暂停脚本的执行,以模拟思考时间。
  ●lr_continue_on_error,指定脚本如何处理错误场景,是继续还是退出。
  ●lr_rendezvous:在Vuser脚本中设置集合点。
 
三、协议相关函数
  除了通用Vuser函数以外,Vugen还会在录制时生成特定于协议的函数,并将它们插入到Vuser脚本中。
1.http协议
  Header设置函数:
  ●Web_add_header
  ●Web_clean_header
  点击链接:
  ●Web_link
  ●Web_image
  提交表单:
  ●Web_submit_data
  ●Web_submit_form
2.web系统设置
  Cache设置:
  ●Web_cache_cleanup
  ●Web_load_cache
  Cookie设置:
  ●Web_add_cookie
  ●Web_cleanup_cookies
  Proxy设置:
  ●Web_set_proxy
  ●Web_set_secure_proxy
3.LR框架支持
  检查点:
  ●Web_find
  ●Web_image_check
  关联:
  ●Web_create_html_param
  ●Web_create_html_param_ex
  ●Web_reg_save_param
  ●Web_set_max_html_param_len
  控制:
  ●Lr_start_transaction
  ●Lr_rendzvous
  ●Lr_think_time
 

LoadRunner的函数的更多相关文章

  1. LoadRunner常用函数列表

    LoadRunner常用函数列表 Web相关函数 函 数 功  能  描  述 web_custom_request 用户可以通过该函数自行创建一个HTTP请求的函数 web_image 模拟用户单击 ...

  2. Loadrunner时间函数、用时间生成订单编号例子

    Loadrunner中取时间函数.用时间函数生成订单编号例子: <如要转载,请注明网络来源及作者:Cheers_Lee> 问题的提出: (1)有时候在Loadrunner中用C语言设计脚本 ...

  3. loadrunner常用函数总结

    事务函数:lr_end_sub_transaction 标记子事务的结束以便进行性能分析lr_end_transaction 标记 LoadRunner 事务的结束lr_end_transaction ...

  4. 转:LoadRunner常用函数列表

    Web相关函数 函    数 功 能 描 述 web_custom_request 用户可以通过该函数自行创建一个HTTP请求的函数 web_image 模拟用户单击图片操作的函数 web_link ...

  5. loadrunner脚本函数讲解

    一. get请求和post请求区别:web_link(get).web_submit_form(post)依赖上下文,web_url.web_submit_data不依赖上下文,建议使用web_url ...

  6. LoadRunner常用函数汇总

    LoadRunner命令汇总 . 命令行分析函数 (1)lr_get_attrib_double() 检索脚本命令行中使用的double类型变量 (2)lr_get_attrib_string() 检 ...

  7. LoadRunner时间戳函数web_save_timestamp_param

    举例:1520822348346(13位,毫秒级)   做时间戳的目的是为了JS缓存和防止CSRF,在LR中可以简单的使用下面这个函数 web_save_timestamp_param 来生成时间戳 ...

  8. loadrunner常用函数整理

    1.int web_reg_save_param("参数名","LB=左边界","RB=右边界",LAST);   //注册函数,在参数值出 ...

  9. loadrunner自定义函数

    https://zhangfy068.iteye.com/blog/1614794 Loadruner 有四种实现自定义函数的方式,根据脚本编写方便性进行选择不同的方式. (1)直接引用法: Acti ...

随机推荐

  1. linux流量异常查看哪些程序占用的

    Linux下进程/程序网络带宽占用情况查看工具 -- NetHogs   http://www.vpser.net/manage/nethogs.html   来自.  最后略有修改 之前VPS侦探曾 ...

  2. linux之各目录作用

    /opt目录 目录用来安装附加软件包,用户调用软件包程序放在目录/opt/package_name/bin下,package_name是安装软件包的名称 /etc目录 是用来放一些核心的配置文件 附各 ...

  3. Java编制至今总结和学习报告

    日期:2018.8.19 星期日 博客期:006 说个事,本来想把博客园做一个交流平台的,可是交流度有点少...嗯...我看我还是把这个平台当作经验传授平台和自己的作品发布平台吧!Java的知识详解, ...

  4. Mybaits动态Sql

    什么是动态SQL? MyBatis的强大之处便是它的动态SQL,如果你使用JDBC那么在根据不同条件查询时,拼接SQL语句是多么的痛苦. 比如查询一个学生信息,可以根据学生的姓名,性别,班级,年龄,学 ...

  5. asynicio模块以及爬虫应用asynicio模块(高性能爬虫)

    一.背景知识 爬虫的本质就是一个socket客户端与服务端的通信过程,如果我们有多个url待爬取,只用一个线程且采用串行的方式执行,那只能等待爬取一个结束后才能继续下一个,效率会非常低. 需要强调的是 ...

  6. 基于BootStrap的Collapse折叠(包含回显展开折叠的对应状态)

    情况描述:为了改善页面上的input框太多,采用∧∨折叠展开,这个小东西来控制,第一次做,记录一下ヾ(◍°∇°◍)ノ゙下边是Code 代码: //html代码 <div id="col ...

  7. Android手机流量分析工具介绍

    一.20 Best Android Hacking Apps And Tools Of 2018 首先罗列常见的Android手机hacking的工具 #1The Android Network Ha ...

  8. 课外知识----base64加密

    每3个字符产生4位的base64字符,不足3个字符,将用“=”补齐至4位base64字符 例如 00--->  MDA= 000--->MDAw base64加密特点 加密后的字符数是4的 ...

  9. (转) Golang的单引号、双引号与反引号

    Go语言的字符串类型string在本质上就与其他语言的字符串类型不同: Java的String.C++的std::string以及Python3的str类型都只是定宽字符序列 Go语言的字符串是一个用 ...

  10. shiro配合html页面完成细粒化权限控制

    shiro配合html页面完成细粒化权限控制 原创 2016年10月04日 12:02:34 标签: shiro / 框架 / 界面 / 权限 8924 shiro是现在非常普遍使用的java权限框架 ...