一、 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脚本函数讲解的更多相关文章

  1. LoadRunner脚本编写之三(事务函数)

    LoadRunner脚本编写之三(事务函数) 关于脚本的这块,前两篇都在讲C语言,其实,要整理点实用的东西挺难,在应用中多对录制的脚本分析,但对于新手学脚本确实无从下手. 先贴一个脚本: 完整代码: ...

  2. LoadRunner脚本编写(5)-- 检查点,关联等函数

    LoadRunner脚本编写(5)-- 检查点,关联等函数 http://www.51testing.com/?34866/action_viewspace_itemid_70224.html来继续翻 ...

  3. LoadRunner脚本编写(转)

    性能测试工程师要懂代码么?答案是必须的.好多测试员认为在loadrunner中编写脚本很难很牛X ,主要是大多测试人员并未做过开发工作,大学的那点程序基础也忘记的差不多了.还有非计算机专业出身的测试员 ...

  4. LoadRunner常用函数列表

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

  5. Loadrunner脚本录制常见问题整理

    1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. 启动浏览器,打开Inter ...

  6. LoadRunner脚本设计、场景设计和结果分析

    本次笔记主要记录LoadRunner脚本设计.场景设计和结果分析   1. 脚本设计       录制模式            手工模式:插入步骤.手动编写       1.1  脚本增强:     ...

  7. LoadRunner脚本 《第二篇》

    一.基础函数简介 在VU左边导航栏中,有三个LoadRunner框架函数,分别是vuser_init().Action().vuser_end().这三个函数存在于任何Vuser类型的脚本中. vus ...

  8. [转]LoadRunner脚本录制常见问题整理

    LoadRunner脚本录制常见问题整理 1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面 ...

  9. 转:如何在 LoadRunner 脚本中做关联 (Correlation)

    如何在 LoadRunner 脚本中做关联 (Correlation) 当录制脚本时,VuGen会拦截client端(浏览器)与server端(网站服务器)之间的对话,并且通通记录下来,产生脚本.在V ...

随机推荐

  1. 使用mpvue开发小程序教程(四)

    在上一章节中,我们将vue-cli命令行工具生成的代码骨架中的src目录清理了一遍,然后从头开始配置和编写了一个可以运行的小程序页面,算是正真走上了使用mpvue开发小程序的第一步.今天我们将进一步来 ...

  2. Chapter 5 Blood Type——6

    "Yes — giving up trying to be good. I'm just going to do what I want now, and let the chips fal ...

  3. Chapter 4 Invitations——11

    "Bella?" His voice shouldn't have been so familiar to me, as if I'd known the sound of it ...

  4. Linux驱动模块编译模板

    hello.c文件: #include <linux/module.h> #include <linux/kernel.h> static int hello_init(voi ...

  5. LeetCode专题-Python实现之第9题:Palindrome Number

    导航页-LeetCode专题-Python实现 相关代码已经上传到github:https://github.com/exploitht/leetcode-python 文中代码为了不动官网提供的初始 ...

  6. RocketMQ源码分析之RocketMQ事务消息实现原理上篇(二阶段提交)

    在阅读本文前,若您对RocketMQ技术感兴趣,请加入 RocketMQ技术交流群 根据上文的描述,发送事务消息的入口为: TransactionMQProducer#sendMessageInTra ...

  7. 在.NET Core中使用简单的插件化机制

    前言 插件化,其实也并不是什么新东西了,像nopCommerce等开源项目都有类似的机制,而且功能比较完善和齐全. 相信大家都对接过不少支付方式,支付宝.微信以及各大银行或第三方的支付公司. 我们可以 ...

  8. 痞子衡嵌入式:飞思卡尔Kinetis系列MCU启动那些事(9)- KBOOT特性(IntegrityCheck)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔Kinetis系列MCU的KBOOT之完整性检测(Integrity Check)特性. Application完整性检测是非常 ...

  9. 痞子衡嵌入式:ARM Cortex-M文件那些事(1)- 源文件(.c/.h/.s)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是嵌入式开发里的source文件. 众所周知,嵌入式开发属于偏底层的开发,主要编程语言是C和汇编.所以本文要讲的source文件主要指的就是 ...

  10. Java——final关键字

    前言 Java中的关键字final的含义通常为"这是无法改变的".下面将介绍final用于修饰数据.方法和类的这三种情况. final数据 许多编程语言都有某种方法,来向告诉编译器 ...