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 ...
随机推荐
- 开源性能测试工具Locust使用篇(二)
那如何理解Locust和TaskSet这两个类呢? class HttpLocust(Locust) 在Locust类中,具有一个client属性,它对应着虚拟用户作为客户端所具备的请求能力,也就是我 ...
- Spring boot 配置文件参数映射到配置类属性
[参考文章]:SpringBoot之@EnableConfigurationProperties分析 [参考文章]:在Spring Boot中使用 @ConfigurationProperties 注 ...
- vue 项目记录.路飞学城(一)
前情提要: 通过vue 搭建路飞学城记录 一:项目分析 二:项目搭建 1:创建项目 vue init webpack luffy 2:初始化项目 清除默认的HelloWorld.vue组件和APP. ...
- Liferay7 BPM门户开发之12:acitiviti和liferay用户权限体系集成
写到第12章才出现Liferay的内容,希望可以厚积薄发. 我们的目标是不使用不维护Activiti的用户组织架构,只维护Liferay的体系,这样的好处是非常明显的,即不用做组织架构的同步工作. 原 ...
- [EXP]Cisco RV110W - Password Disclosure / Command Execution
#!/usr/bin/env python2 ##### ## Cisco RV110W Password Disclosure and OS Command Execute. ### Tested ...
- 使用 redis-dump 批量导入导出数据
有时候需要将 redis 的数据进行导入导出操作,可以使用 redis-dump 这款工具. 一.安装RVM redis-dump 工具依赖于2.2以上版本的 ruby,而 centos 环境下 yu ...
- 【原创】贡献一个JS的弹出框代码...
一.前言 最近在做一个项目,自己感觉系统自带的alert()方法的弹出框实在是不堪入目,所以在网上找了一些资料,然后自己加工了一下,做出了自己的一个js弹出框,在这里贡献出来,希望对你有帮助. 二.开 ...
- Netty入门——客户端与服务端通信
Netty简介Netty是一个基于JAVA NIO 类库的异步通信框架,它的架构特点是:异步非阻塞.基于事件驱动.高性能.高可靠性和高可定制性.换句话说,Netty是一个NIO框架,使用它可以简单快速 ...
- Asp.Net MVC +EntityFramework主从表新增编辑操作的实现(删除操作怎么实现?)
Asp.Net MVC +EntityFramework主从表新增编辑操作的实现 对于MVC中同时对主从表的表单操作在网上现有的解决很少,而这样的操作在做业务系统中是经常为遇到的.我在网上搜索了很久都 ...
- easyui datagrid 禁止选中行
没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) { // $(this).datagr ...