loadrunder之脚本篇——脚本基础知识和常用操作
1)编码工具设置
自动补全输入Tools->General Options->Environment->Auto complete word
显示功能语法Tools->Genral Options->Environment->Show Function Syntax
2)脚本注释
添加注释:
//Edit->Advanced->Comment selection、 Ctrl+Alt+C
注意:注释前,必须先选定要注释、取消注释的内容,按下快捷键才有注释符的出现
//注释一行
取消注释:
(Edit->Advanced->Uncomment selection、 Ctrl+Alt+U)
3)语法规则
1.以lr开头的函数都是LoadRunner自带的基础函数,以web开头的函数都是Web Vuser script函数,用来模拟用户行为。
2.在脚本中的任何系统函数之间,都不能使用C语言元素。
Action2()
{
int x = 10; //正确//变量定义、声明不能在系统函数之后,
//打开登录页面
web_url("WebTours",
"URL=http://172.25.75.2:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
// int x = 10; //错误
lr_think_time(2);
return 0;
}
4)脚本的导入导出
导出脚本(File->Zip Options->Export to zip File)
在打包代码的时候可以选择All files或者Runtime files。区别在于Runtime files只包含运行整个脚本的基本内容,压缩包较小。如果选择All files,那么就是将整个脚本目录,包含运行后的Results目录也一起打包,压缩包较大。一般来说,如果只是提交代码,那么建议选择Runtime files。
导入脚本:File->Zip Options->Import from Zip File
导入脚本:File->Zip Options->work from Zip File
不解压zip文件,直接从zip中打开。更新脚本后保存,会直接更新zip压缩包。和平常不解压,直接从zip中打开文档,修改后,保存,更新压缩包是一个道理
导入Action:Actions > Import Action into Vuser
点击OK,如下
5)脚本调试
不支持VBscript和VB应用程序类型的用户脚本
单步调试:
先进行断点设置,然后
Vuser->Run Step By Step、F10
每按一次F10,就执行一下句脚本
断点设置
鼠标移动到要设置断点的脚本位置,通过Insert->Toggle Breakpoint(F9)功能实现断点设置,按F5运行脚本,到断点处按F10继续运行
Edit > Breakpoints
6)使用C函数进行跟跟踪
用c函数debug脚本。ci_set_debug函数允许在指定的点开启和关闭跟踪和调式
原型:ci_set_debug(ci_this_context, int debug, int trace);
例如:
ci_set_debug(ci_this_context, 1, 1);
ci_set_debug(ci_this_context, 0, 0);
Bookmarks(Edit->Bookmarks->Toggle Bookmark、Ctrl+F2)
鼠标移动到要设置标签的脚本位置,通过Edit->Bookmarks->Toggle Bookmark、Ctrl+F2
可以在脚本上标记一个标签,方便切换不同的代码段,通过按F2键和Shift+F2组合键来往前往后跳转标签
注意:标签仅在同一个代码页面内切换
7)代码折叠
代码中单击鼠标右键,找到菜单Expand/Collapse->Expand ALL:展开所有;Collapse ALL 折叠所有,也可以选择Diable Expand Collapse禁用代码折叠功能
8)代码日志定位
代码日志定位:右键函数代码,点击Go to Step in Replay Log 或Edit > Go To Step in Replay Log.
快速打开代码所在目录:右键函数代码,点击 Open Script Directory
跳转到指定行的日志记录:右键日志区域,选择go to line或者选择中Edit->Go To Line、Ctrl+G,填写行数
9) 常用函数
1) 获取用户信息函数
例如:获取主机上有Vuser正在其上运行的主机名。.
my_host = lr_get_host_name( );
2) 发送消息到输出
使用消息类型函数,可以发送自定义错误和提醒消息到控制台输出和日志文件及测试报告。例如,可插入条消息来显示当前客户端应用的状态。lr在Output输出窗口中显示这些消息。.也可以把消息保存到文件。
注意:不要在事务中发送消息,因为这个会延长事务时间,影响测试结果
lr_message, lr_output_message, 和lr_log_message函数不受run-time settings中的日志级别的影响,它们总是可以发消息。.
10) 脚本比较Tools > Compare with Script.
比较Vuser scripts
1 打开第一个你要比较的脚本。
2 选择Tools > Compare with Script.
3 选择第二个你要比较的脚本。两个脚本在新窗口中并排显示,不同点被黄色高亮显示。
loadrunder之脚本篇——脚本基础知识和常用操作的更多相关文章
- 学习 shell脚本之前的基础知识
转载自:http://www.92csz.com/study/linux/12.htm 学习 shell脚本之前的基础知识 日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写sh ...
- 转载:shell脚本之前的基础知识
转载地址:http://www.92csz.com/study/linux/12.htm 第十二章 学习 shell脚本之前的基础知识 日常的linux系统管理工作中必不可少的就是shell脚本,如果 ...
- spring cloud系列教程第四篇-Eureka基础知识
通过前三篇文章学习,我们搭建好了两个微服务工程.即:order80和payment8001这两个服务.有了这两个基础的框架之后,我们将要开始往里面添加东西了.还记得分布式架构的几个维度吗?我们要通过一 ...
- LWJGL3的内存管理,第一篇,基础知识
LWJGL3的内存管理,第一篇,基础知识 为了讨论LWJGL在内存分配方面的设计,我将会分为数篇随笔分开介绍,本篇将主要介绍一些大方向的问题和一些必备的知识. 何为"绑定(binding)& ...
- 学习shell脚本之前的基础知识
日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写shell脚本,那么你就不算一个合格的管理员.目前很多单位在招聘linux系统管理员时,shell脚本的编写是必考的项目.有的单位 ...
- shell脚本之前的基础知识
日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写shell脚本,那么你就不算一个合格的管理员.目前很多单位在招聘linux系统管理员时,shell脚本的编写是必考的项目.有的单位 ...
- 大数据学习笔记——Java篇之基础知识
Java / 计算机基础知识整理 在进行知识梳理同时也是个人的第一篇技术博客之前,首先祝贺一下,经历了一年左右的学习,从完完全全的计算机小白,现在终于可以做一些产出了!可以说也是颇为感慨,个人认为,学 ...
- SLAM第一篇:基础知识
无论在室内.野外.空中还是水下,SLAM是机器人进入未知环境遇到的第一个问题.本期给大家介绍SLAM的基础知识:传感器与视觉SLAM框架 近来年,智能机器人技术在世界范围内得到了大力发展.人们致力于把 ...
- SQL server基础知识(表操作、数据约束、多表链接查询)
SQL server基础知识 一.基础知识 (1).存储结构:数据库->表->数据 (2).管理数据库 增加:create database 数据库名称 删除:drop database ...
随机推荐
- SpringMVC请求使用@PathVariable获取文件名称并且文件名中存在.导致路径被截取的问题
在SpringMVC中,当使用@pathVariable通过Get请求获取路径名称时,如果路径名称上存在小数点,则获取不到小数点后面的内容,会被Spring截取. 比如我获取某一文件,路径是local ...
- struts2的validate在使用过程中的一个问题
在项目中有一个新增客户信息的的功能: 1.在进入加入页面:add.jsp页面之前,要调用一个add_init.do来获取省份信息列表以供在add.jsp进行选择. 2.add页面填写完毕以后.提交给 ...
- Java中的动态代理以及Proxy类的偷瞄
动态代理机制 所谓动态代理,即通过代理类Proxy的代理,接口和实现类之间可以不直接发生联系,而可以在运行期(Runtime)实现动态关联. Java动态代理类位于Java.lang.reflect包 ...
- Pairs Forming LCM 在a,b中(a,b<=n)(1 ≤ n ≤ 10^14),有多少组(a,b) (a<b)满足lcm(a,b)==n; lcm(a,b)=p1 ^ max(a1,b1) * p2 ^ max(a2,b2) *..........*pn ^ max(an,bn)
转自:http://www.cnblogs.com/shentr/p/5285407.html http://acm.hust.edu.cn/vjudge/contest/view.action?ci ...
- Vim使用技巧(2) -- 插入模式技巧 【持续更新】
组合快捷键 Ctrl + h //删除前一个字母(同退格键) Ctrl + w //删除前一个单词 Ctrl + u //删除到行首 Esc //切换到普通模式 Ctrl + [ //切换到普通模式 ...
- mysql 京东
DROP TABLE IF EXISTS `jd_admin`;CREATE TABLE `jd_admin` ( `id` int(10) unsigned NOT NULL AUTO_INCREM ...
- Spring MVC静态页面
以下示例显示如何使用Spring MVC Framework编写一个简单的基于Web的应用程序,它可以使用<mvc:resources>标记访问静态页面和动态页面.首先使用Eclipse ...
- Eclipse 重构菜单
Eclipse 重构菜单 使用Eclipse重构 在项目开发中我们经常需要修改类名,但如果其他类依赖该类时,我们就需要花很多时间去修改类名. 但 Eclipse 重构功能可以自动检测类的依赖关系并修改 ...
- Eclipse 悬浮提示
Eclipse 悬浮提示 使用悬浮提示 java 编辑器中包含了不同类型的悬浮提示,悬浮提示提供了鼠标指针指向元素的额外信息.所有java编辑器中相关的悬浮提示可以通过 preference(首选项) ...
- Failed to load the JNI shared library jvm.dl
. 原因1:该目录下jvm.dll不存在 2 解决办法:重新安装jdk或者jre并配置好环境变量.copy一个jvm.dll放在该目录下 3 原因2:eclipse的版本与jdk或者jre版本不一致 ...