loadrunner脚本函数讲解
一、 get请求和post请求
区别:web_link(get)、web_submit_form(post)依赖上下文,web_url、web_submit_data不依赖上下文,建议使用web_url(get)、web_submit_data(post)请求。
web_url("web_url",
"URL=https://mp.csdn.net/",
"TargetFrame=",
"Resource=0",
"Referer=",
EXTRARES,
"URL=a", "Referer=a", ENDITEM,
LAST);
web_submit_data可以有post和get请求
web_submit_data("web_submit_data",
"Action=https://aaa.hs.net:8442/",
"Method=POST",
"TargetFrame=",
"Referer=",
ITEMDATA,
"Name=a", "Value=a", ENDITEM,
"Name=b", "Value=b", ENDITEM,
LAST);
web_custom_request只有get请求
web_custom_request("orderAdd",
"URL=https://TTT.hs.net:8443/",
"Method=GET",
"Mode=HTTP",
"Body=ajaxPostData={\"name\":\"value\",\"name1\":\"value1\"}",
LAST);
一般loadrunner安装完默认是的web_link、web_submit_form,需要修改如下选项:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190302134711286.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpbmF0XzQxOTE3MzA2,size_16,color_FFFFFF,t_70)
二、 关联函数
1)web_reg_save_param:必须放在请求前面,`"`要用`\"`转义
web_reg_save_param("text",
"LB=a\"”",
"RB=/b",
LAST);
web_url("web_url",
"URL=https://cc.com",
"TargetFrame=",
"Resource=0",
"Referer=",
EXTRARES,
"URL=a", "Referer=a", ENDITEM,
LAST);
lr_output_message(lr_eval_string("{text}"));
2)关联函数通配符以及关联数组应用
`#`表示`0-9数字`
`Ord`表示要哪个值
`IgnoreRedirections`忽略重定向
`Ord=All`表示获取到所有值存到test1数组中
web_reg_save_param("test1",
"LB/DIG=a\"##",
"RB=v",
"Ord=All",
"SaveOffset=5",
"SaveLen=8",
"IgnoreRedirections=Yes",
LAST);
lr_save_string(lr_paramarr_random("test1"),"param")
数组相关函数:
lr_paramarr_idx("string",1):数组的第一个索引值
lr_paramarr_len("string"):数组的长度
lr_save_string(lr_paramarr_random("string"),"string1"):随机输出数组值存储到string1
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190302163907566.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpbmF0XzQxOTE3MzA2,size_16,color_FFFFFF,t_70)
三、 事务
1)事务:
统计事务的成功率
统计每一个请求或者一批请求的响应时间
不勾选下图两个
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190304104342576.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpbmF0XzQxOTE3MzA2,size_16,color_FFFFFF,t_70)
lr_start_transaction("test")
...
lr_end_transaction("test", LR_AUTO/LR_PASS/LR_FAIL);
LR_AUTO是根据响应的状态码进行判断
四、检查点函数
aito:字符串转换成整数
web_reg_find("SaveCount=testcount",
"Text=test",
LAST);
if(aito(le_eval_string("{testcount}"))==1)
{
}
else{
}
五、思考时间
lr_think_time(20)
勾选“Replay think time”则表示模拟用户思考时间,一般用户的思考时间不一样,使用随机数,不能设置的太长,如图所示
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190304163043740.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpbmF0XzQxOTE3MzA2,size_16,color_FFFFFF,t_70)
六、集合点
适用于并发测试,有两种情况:
1、所有用户都在请求服务器
2、所有用户都在同一时间提交同一个请求
压力测试(不需要思考时间)
负载测试:最大用户数(某一个指标到达极限)
并发测试(相对严格的并发)
稳定性测试:长时间的,最佳用户(系统处于最佳状态)
容量测试:数据库中有很大的数据的前提下进行压测
lr_rendezvous("test");
集合点要放置在事务前面
七、web_set_option()
设置Web选项。(对web录制或者运行脚本设置选项)
web_set_option(“DecodeContent”,“No”,LAST):禁用解码
web_set_option(“DecodeContent”,“Yes”,LAST):启用解码
web_set_option(“MaxRedirectionDepth”,“0”,LAST):禁用重定向
参考:https://blog.csdn.net/testingstar/article/details/78106131
loadrunner脚本函数讲解的更多相关文章
- LoadRunner脚本编写之三(事务函数)
LoadRunner脚本编写之三(事务函数) 关于脚本的这块,前两篇都在讲C语言,其实,要整理点实用的东西挺难,在应用中多对录制的脚本分析,但对于新手学脚本确实无从下手. 先贴一个脚本: 完整代码: ...
- LoadRunner脚本编写(5)-- 检查点,关联等函数
LoadRunner脚本编写(5)-- 检查点,关联等函数 http://www.51testing.com/?34866/action_viewspace_itemid_70224.html来继续翻 ...
- LoadRunner脚本编写(转)
性能测试工程师要懂代码么?答案是必须的.好多测试员认为在loadrunner中编写脚本很难很牛X ,主要是大多测试人员并未做过开发工作,大学的那点程序基础也忘记的差不多了.还有非计算机专业出身的测试员 ...
- LoadRunner常用函数列表
LoadRunner常用函数列表 Web相关函数 函 数 功 能 描 述 web_custom_request 用户可以通过该函数自行创建一个HTTP请求的函数 web_image 模拟用户单击 ...
- Loadrunner脚本录制常见问题整理
1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. 启动浏览器,打开Inter ...
- LoadRunner脚本设计、场景设计和结果分析
本次笔记主要记录LoadRunner脚本设计.场景设计和结果分析 1. 脚本设计 录制模式 手工模式:插入步骤.手动编写 1.1 脚本增强: ...
- LoadRunner脚本 《第二篇》
一.基础函数简介 在VU左边导航栏中,有三个LoadRunner框架函数,分别是vuser_init().Action().vuser_end().这三个函数存在于任何Vuser类型的脚本中. vus ...
- [转]LoadRunner脚本录制常见问题整理
LoadRunner脚本录制常见问题整理 1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面 ...
- 转:如何在 LoadRunner 脚本中做关联 (Correlation)
如何在 LoadRunner 脚本中做关联 (Correlation) 当录制脚本时,VuGen会拦截client端(浏览器)与server端(网站服务器)之间的对话,并且通通记录下来,产生脚本.在V ...
随机推荐
- React Native (一) 入门实践
上周末开始接触react native,版本为0.37,边学边看写了个demo,语法使用es6/7和jsx.准备分享一下这个过程.之前没有native开发和react的使用经验,不对之处烦请指出.笔者 ...
- 痞子衡嵌入式:飞思卡尔i.MX RT系列MCU启动那些事(2)- Boot配置(BOOT Pin/eFUSE)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RT系列MCU的Boot配置. 在上一篇文章 Boot简介 里痞子衡为大家介绍了Boot基本原理以及i.MXRT Bo ...
- Python四步实现决策树ID3算法,参考机器学习实战
一.编写计算历史数据的经验熵函数 from math import log def calcShannonEnt(dataSet): numEntries = len(dataSet) labelCo ...
- C#线程同步--线程通信
问题抽象:当某个操作的执行必须依赖于另一个操作的完成时,需要有个机制来保证这种先后关系.线程通信方案:ManualResetEventSlim.ManualResetEvent.AutoResetEv ...
- Android破解学习之路(十一)—— 关于去更新
根据对话框的文字找到对应的对话框,设置visability 为gone 修改版本号,aptool 搜索http://,找到更新的地址,修改为127.0.0.0 搜索update,upgrade,ver ...
- 814-Binary Tree Pruning
Description: We are given the head node root of a binary tree, where additionally every node’s value ...
- JavaWeb - 模仿SpringMVC抽取 BaseServlet + 封装表单参数
模仿SpringMVC抽取一个BaseServlet,接收所有请求,然后自动封装表单参数和分发到对应的servlet执行,下面用一个页面表单提交,转发显示的项目做示例. 1)首先准备一个Entity, ...
- #WEB安全基础 : HTML/CSS | 0x10.1更多表单
来认识更多的表单吧,增加知识面 我只创建了一个index.html帮助你认识它们 以下是代码 <!DOCTYPE html> <html> <head> <m ...
- 记录自己使用GitHub的点点滴滴
前言 现在大多数开发者都有自己的GitHub账号,很多公司也会以是否有GitHub作为一项筛选简历以及人才的选项了,可见拥有一个GitHub账号的重要性,本文就从最基本的GitHub账号的注册到基本的 ...
- 二、IPC机制
1.Android IPC简介 IPC是Inter-Process Communication的缩写,含义为进程间通信或者跨进程通信,是指两个进程之间进行数据交换的过程. ANR:Applicatio ...