LR中的时间戳函数web_save_timestamp_param
以前真没注意过后面看某个群有人说到这个函数一查,还真有,那么处理时间戳就简单很多了,我们经常在各种网站上看到类似于这样的时间戳
web_save_timestamp_param
web_save_timestamp_param("tStamp", LAST);
lr_output_message("%s",lr_eval_string("{tStamp}"));
brokerDetail.c(49): web_save_timestamp_param("web_save_timestamp_param") was successful [MsgId: MMSG-26392]
brokerDetail.c(53): 1433760182344
我想生成唯一的一个用户名。想到用web_save_timestamp_param函数。web_save_timestamp_param function saves the current timestamp to LoadRunner parameter. Timestamp is the number of milliseconds since midnight January 1st, 1970 (also known as Unix Epoch).
说这个函数是存储毫秒级的时间戳。而我刚取到的时间戳是1302245899530,这个时间戳我完全看不懂呀!跟时间不搭边呀现在时间是14:58分钟。
后来才发现取到的时间戳是现在时间减去现在的时间 减去 1970年1月1日0点00 的时间 ,然后换算成毫秒。
Lr_save_datetime函数的使用
最近几天在录制测试脚本,希望能有一个方法自动保存系统时间,以便能够更好的进行分辨,于是在LR的帮助函数中查找到了lr_save_datetime函数,一试验,感觉非常不错,满足了我的要求,下面就将lr_save_datetime函数的使用方法记载下来,以便后用:
<!--[if !supportEmptyParas]--> <!--[endif]-->
函数原型:
voidlr_save_datetime(const char *format,intoffset,const char *name);
<!--[if !supportEmptyParas]--> <!--[endif]-->
format:期望输出的日期格式,比如说:%Y、%m、%d、%X等等
<!--[if !supportEmptyParas]--> <!--[endif]-->
offset:类似与表示时间的一些关键字常量,主要有DATE_NOW, TIME_NOW, ONE_DAY, ONE_HOUR, ONE_MIN,他们可以单独使用,也可以联合使用,比如DATE_NOW + TIME_NOW
<!--[if !supportEmptyParas]--> <!--[endif]-->
name:期望将时间保存到的那个参数的名称
<!--[if !supportEmptyParas]--> <!--[endif]-->
举例:
lr_save_datetime(“%Y-%m-%d %x”,DATE_NOW+TIME_NOW,“DateTimeParam”);
lr_output_message(lr_eval_string("Now is {DateTimeParam}"));
loadrunner函数 lr_save_datetime 今天到51testing的blog里查看文章《Loadrunner获取当前系统时间》的回复,51testing的网友persist提到了一个lr函数实现的方法也可以实现,在这里非常感谢persist;只有 交流和不断的学习,我们的技术水平才能进步哈!! 本人在51testing的blog全部为原创,转载请注明!! 扯的有点远了,还是看这个函数吧!! 【lr_save_datetime】 void lr_save_datetime(const char *format, int offset, const char *name); 中文解释:
lr_save_datetime将当前日期和时间,或具有指定偏移的日期和时间保存在参数中。如果达到MAX_DATETIME_LEN个字符,结果字符串将被截断。 参数说明:
1、const char *format
格式化信息
同fopen、lr_message等相同;例如:"the first is %s" 2、int offset
时间的偏移量
DATE_NOW(现在的日期)
TIME_NOW(现在的时间)
ONE_DAY(一天的时间)
ONE_HOUR(一小时的时间)
ONE_MIN(一分钟的时间) 需要注意的是,时间的偏移量可以使用公式,例如:DATE_NOW+ONE_DAY 这样,我们就可以取得昨天、明天的日期了
DATE_NOW-ONE_DAY(昨天)
DATE_NOW+ONE_DAY(明天) 那么,我们就可以使用如下表示得到前天的日期
lr_save_datetime("%Y-%B-%d",DATE_NOW-2*(ONE_DAY),"abc");
lr_save_datetime("%Y-%B-%d",DATE_NOW-2*24*(ONE_HOUR),"abc");
lr_save_datetime("%Y-%B-%d",DATE_NOW-2*24*60*(ONE_MIN),"abc"); 当然,我们也可以使用如下表示2个小时后的时间
lr_save_datetime("%H:%M:%S",TIME_NOW+2*(ONE_HOUR),"ab");
lr_save_datetime("%H:%M:%S",TIME_NOW+2*60*(ONE_MIN),"ab"); 3、const char *name
参数保存的参数名;使用时lr_eval_string("{参数名}") 示例如下:
===========================================
Action()
{
lr_save_datetime("%y-%b-%d",DATE_NOW-2*24*(ONE_HOUR),"abc");
//保存前天的日期到参数abc中
lr_message("the day before yesterday is:%s",lr_eval_string("{abc}"));
//输出abc的值
lr_save_datetime("%H:%M:%S",TIME_NOW+2*(ONE_HOUR),"ab");
//保存2个小时后的时间到参数ab中
lr_message("the time after two hour is:%s",lr_eval_string("{ab}"));
//输入ab的值
return 0;
} 执行结果如下:
the day before yesterday is:07-七月-04
the time after two hour is:15:33:41
=========================================== 附:《lr_save_datetime格式参数表》
%a 星期几的简写
%A 星期几的全称
%b 月分的简写
%B 月份的全称
%c 标准的日期的时间串
%C 年份的后两位数字
%d 十进制表示的每月的第几天
%D 月/天/年
%e 在两字符域中,十进制表示的每月的第几天
%F 年-月-日
%g 年份的后两位数字,使用基于周的年
%G 年分,使用基于周的年
%h 简写的月份名
%H 24小时制的小时
%I 12小时制的小时
%j 十进制表示的每年的第几天
%m 十进制表示的月份
%M 十时制表示的分钟数
%n 新行符
%p 本地的AM或PM的等价显示
%r 12小时的时间
%R 显示小时和分钟:hh:mm
%S 十进制的秒数
%t 水平制表符
%T 显示时分秒:hh:mm:ss
%u 每周的第几天,星期一为第一天 (值从0到6,星期一为0)
%U 第年的第几周,把星期日做为第一天(值从0到53)
%V 每年的第几周,使用基于周的年
%w 十进制表示的星期几(值从0到6,星期天为0)
%W 每年的第几周,把星期一做为第一天(值从0到53)
%x 标准的日期串
%X 标准的时间串
%y 不带世纪的十进制年份(值从0到99)
%Y 带世纪部分的十制年份
%z,%Z 时区名称,如果不能得到时区名称则返回空字符。
%% 百分号
LR中的时间戳函数web_save_timestamp_param的更多相关文章
- Loadrunner 中时间戳函数 web_save_timestamp_param(时间返回数值)
web_save_timestamp_param("tStamp", LAST); lr_output_message("Moon1:%s",lr_eval_s ...
- LoadRunner时间戳函数web_save_timestamp_param
举例:1520822348346(13位,毫秒级) 做时间戳的目的是为了JS缓存和防止CSRF,在LR中可以简单的使用下面这个函数 web_save_timestamp_param 来生成时间戳 ...
- LR中日志设置和日志函数
LR中日志参数的设置与使用 1.Run-Time Setting日志参数的设置 在loadrunner的vuser菜单下的Run-Time Setting的General的LOG选项中可以对在执行脚本 ...
- LoadRunner中的Web 函数列表
LoadRunner中的Web 函数列表 web test LoadRunner fuction_list D:\Program Files (x86)\Mercury Interactive\Mer ...
- LR中获取当前系统时间方法
方法一:使用loadrunner的参数化获取当前时间使用lr的参数化,非常方便,对lr熟悉的各位朋友也能马上上手,时间格式也有很多,可以自由选择.步骤:1.将复制给aa的值参数化2.选中abc,使用右 ...
- nodejs中获取时间戳、时间差
Nodejs中获取时间戳的方法有很多种,例如: new Date().getTime() Date.now() process.uptime() process.hrtime() 平时想获取一个时间戳 ...
- MySQL 获得当前日期时间\时间戳 函数 ( 转自传智播客)
MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +-------+ | now() | +-- ...
- 关于LR中的EXTRARES
LoadRunner脚本之EXTRARES参数 EXTRARES:分隔符,表示标记下一个属性是资源属性的列表(list of resource attributes). [EXTRARES后的资源是由 ...
- LR中的C语言问题
今天在调试LR的脚本(C)时遇到了几个甚是头痛得问题,下面简单总结下: 1.首先LR中的C编译器遵循C90标准,规定在一个函数中,变量定义必须放在所有的执行语句之前!一旦在运行语句之间再有定义的话,会 ...
随机推荐
- ubuntu 16.04 + N驱动安装 +CUDA+Qt5 + opencv
Nvidia driver installation(after download XX.run installation file) 1. ctrl+Alt+F1 //go to virtual ...
- 【校验】TCP和UDP的校验和
一开始,私以为校验和只是简单的求和得到的结果,后来在TCP和UDP里面看到使用的校验和方式有点奇怪--二进制反码(循环进位)求和. 人类的认知过程必将从简单到复杂,看下这个二进制反码循环求和是啥子意思 ...
- Struts相关
使用Struts2流程: 1.导入Struts2类包 2.在Web源代码文件夹中,创建名为struts.xml的配置文件.在其中定义Action对象,其关键代码如下: struts.xml: < ...
- 【BZOJ3036】绿豆蛙的归宿 概率与期望
最水的概率期望,推荐算法合集之<浅析竞赛中一类数学期望问题的解决方法> #include <iostream> #include <cstdio> using na ...
- Selenium_IEDriver操作sendkeys输入速度太慢
通过调用64位IEDriverServer来操控sendkeys方式时,输入速度非常慢.网上说是64位有bug. 解决办法: 使用32位IEDriverServer.
- 关于node.js
JS是一种脚本语言,它的本身并不能进行编译和执行,在最早的时期只是作为浏览器的脚本,只能够在浏览器中执行操作,也就是说JS必须依赖一个运行环境作为载体才能够执行. 而nodejs是基于chromeV8 ...
- python 虚拟环境
python3 目录venv创建为虚拟环境,并激活. $ python3 -m venv ./venv$ source venv/bin/activate -m: -m mod : run libra ...
- php清理服务器无效软链接(源码)
<?php /** * @desc 递归删除当前目录下的无效软连接 * @author mengdj<mengdj@outlook.com> 2014.10.03 1118 */ / ...
- 印象笔记 剪藏(Evernote WebClipper) bug 记录
问题记录: Chrome版的 webclipper不知为何新装的时候切换到中国版印象笔记登陆的时候闪退,然后之后就无法进入中国区的登录页面:international版确认可以登录. cookies是 ...
- spring注解配置实例
在spring中使用注解配置前需要先在配置文件指定需要扫描的包. 通过注解的方式依赖注入,可以不用创建set方法,也不用在xml文件中申明注入关系. 实例结构如下: 整个流程是: 先创建好数据库的表对 ...