loadrunner 脚本开发-基本知识
脚本开发-基本知识
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
选择第二个你要比较的脚本。两个脚本在新窗口中并排显示,不同点被黄色高亮显示。
loadrunner 脚本开发-基本知识的更多相关文章
- loadrunner 脚本开发-参数化之将内容保存为参数、参数数组及参数值获取
转自:http://blog.sina.com.cn/s/blog_13cc013b50102v49c.html(查看原文) 在VuGen中默认使用{}的字符串称为参数 注意:参数必须在双引号中才能用 ...
- Loadrunner脚本开发规范
Loadrunner脚本开发规范 目录 1.一般约定... 3 2.代码注释约定... 4 3.格式化代码... 5 1.一般约定 1.1具体脚本规则,必须在具体代码中加注释,以便脚本开发人员阅读和理 ...
- Loadrunner 脚本开发-利用loadrunner开发Windows Sockets协议脚本
脚本开发-利用loadrunner开发Windows Sockets协议脚本 by:授客 QQ:1033553122 欢迎加入软件性能测试交流QQ群:7156436 实践举例 Socket服务端简单实 ...
- Loadrunner脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试
脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试 by:授客 QQ:1033553122 目的 实现基于http协议的流媒体在线视频播放,服务器性能测试脚本,模拟用户浏览器方式在线播放 ...
- Loadrunner 脚本开发-利用Loadrunner生成Web service测试脚本
脚本开发-利用Loadrunner生成Web service测试脚本 1.选择协议--Web Service,如下图 2.导入服务 入口1:点击Manage Services ->弹出窗中选择“ ...
- loadrunner 脚本开发-执行操作系统命令
脚本开发-执行操作系统命令 by:授客 QQ:1033553122 思路: 用loadrunner system()函数 函数原型: int system( const char *string ); ...
- loadrunner 脚本开发-文件下载
脚本开发-文件下载 by:授客 QQ:1033553122 下载简介 对 HTTP协议来说,无论是下载文件或者请求页面,对客户端来说,都只是发出一个GET请求,并不会记录点击后的“保存”.“另存为操作 ...
- Loadrunner 脚本开发-利用web_submit_data函数实现POST请求
脚本开发-利用web_submit_data函数实现POST请求 by:授客 QQ:1033553122 概述 web_link()和web_url()函数都是页面访问型函数,实现HTTP请求中的 ...
- Loadrunner 脚本开发-从文件读取数据并参数化
脚本开发-从文件读取数据并参数化 by:授客 QQ:1033553122 直接上代码: char* testfn() { int count, total = 0; //char buffer[1 ...
随机推荐
- LabVIEW(十):数组和簇
一.数组 1.创建数组 (1).前面板右键>“数组.矩阵与簇”>数组. (2).前面板右键>(选择要添加的数组数据类型,比如创建数值数组)数值>将“数值输入控件”拖入数组中. ...
- LeetCode:144_Binary Tree Preorder Traversal | 二叉树的前序遍历 | Medium
题目:Binary Tree Preorder Traversal 二叉树的前序遍历,同样使用栈来解,代码如下: struct TreeNode { int val; TreeNode* left; ...
- Spark基础脚本入门实践1
1.创建数据框架 Creating DataFrames val df = spark.read.json("file:///usr/local/spark/examples/src/mai ...
- 快速排序——Quick Sort
基本思想:(分治) 先从数列中取出一个数作为key值: 将比这个数小的数全部放在它的左边,大于或等于它的数全部放在它的右边: 对左右两个小数列重复第二步,直至各区间只有1个数. 辅助理解:挖坑填数 初 ...
- 模板引擎之-jade
##### 首先我们安装jade模板引擎并编译`npm install jade --global`在项目文件夹下创建一个`index.jade`文件,并且写入```doctypehtml head ...
- 读vue-0.6-filters.js源码
'abc' => 'Abc' function capitalize (value) { if (!value && value !== 0) return '' value = ...
- 如何发布一个npm包(基于vue)
前言:工作的时候总是使用别人的npm包,然而我有时心底会好奇自己如何发布一个npm包呢,什么时候自己的包能够被很多人喜欢并使用呢...今天我终于迈出了第一步. 前提:会使用 npm,有 vue 基础, ...
- 一直性hash解决扩容后的hash算法不用变
转自: http://blog.codinglabs.org/articles/consistent-hashing.html 摘要 本文将会从实际应用场景出发,介绍一致性哈希算法(Consisten ...
- sip 注册流程
基本注册流程示意图: 注册流程描述如下: 1. SIP代理向SIP服务器发送REGISTER请求: 2. SIP服务器向SIP代理发送响应401,并在响应的消息头WWW ...
- MyBatis(国税)
一.MyBatis概要 1.1.ORM介绍 对象关系映射(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),用于实现面向对象编程语言里不同类型系统 ...