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 ...
随机推荐
- touch-action属性引起的探索
最近在做微信项目的时候遇到一个奇怪的问题: 常购清单的商品多了以后往上滑没有任何反应,不能滑动.但商城首页又可以往上滑.而且ios没有这个问题,安卓才有这个问题. 起初我以为是因为这2个页面调用接口 ...
- Java学习笔记48(DBUtils工具类一)
上一篇的例子可以明显看出,在增删改查的时候,很多的代码都是重复的, 那么,是否可以将增删改查封装成一个类,方便使用者 package demo; /* * 实现JDBC的工具类 * 定义方法,直接返回 ...
- 如何使用spring配合mybatis配置多个数据源并应用?
使用多数据源的场景应该是很多的,如操作同一台服务器上不同的数据库,或者多地机器上的相同或不相同数据库. 虽然涉及到不同数据库时,我们也许可以通过跨库操作的方式,如 other.user 使用同一数据源 ...
- Qt之实现360安全卫士主界面代码开源
匆匆一年又过去了,总结去年一年的节奏就是忙爆了:生活忙.工作忙,值得庆幸的是没有瞎忙:今天打开博客园查看我的博客,才发现几乎差不多一年时间没写博客了:博客文章就是记忆,就是曾经努力过的见证,感谢博客园 ...
- asp.net mvc 安全测试漏洞 " HTTP 动词篡改的认证旁路" 问题解决
IBM Security Appscan漏洞筛查-HTTP 动词篡改的认证旁路漏洞,具体解决方案: 在Web.Config中system.webServer节点增加配置security: <se ...
- Linux下用ifconfig命令设置IP、掩码、网关
设置IP和掩码ifconfig eth0 192.168.1.240 netmask 255.255.255.0设置网关route add default gw 192.168.1.1 每日一言:靡不 ...
- Linux学习笔记之五————Linux常用命令之用户、权限管理
一.引言 用户是Unix/Linux系统工作中重要的一环,用户管理包括用户与组账号的管理. 在Unix/Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资 ...
- (转)Linux开启路由转发功能
原文:https://www.linuxidc.com/Linux/2016-12/138661.htm 标记一下,今天想让一台Red Hat Enterprise Linux 7开通iptables ...
- MapReduce-深度剖析
1.概述 在接触了第一代MapReduce和第二代MapReduce之后,或许会有这样的疑惑,我们从一些书籍和博客当中获取MapReduce的一些原理和算法,在第一代当中会有JobTrack,Task ...
- Vue + Element UI 实现权限管理系统 前端篇(十):动态加载菜单
动态加载菜单 之前我们的导航树都是写死在页面里的,而实际应用中是需要从后台服务器获取菜单数据之后动态生成的. 我们在这里就用上一篇准备好的数据格式Mock出模拟数据,然后动态生成我们的导航菜单. 接口 ...