Loadrunner时间函数、用时间生成订单编号例子
Loadrunner中取时间函数、用时间函数生成订单编号例子:
<如要转载,请注明网络来源及作者:Cheers_Lee>
问题的提出:
(1)有时候在Loadrunner中用C语言设计脚本时却要取系统时间;
(2)需要用时间生成唯一订单号;
(3)时间函数加随机数产生不重复的订单号;
一、取系统时间:
Action() { lr_save_datetime("现在是:%Y年%m月%d日%H时%M分%S秒", DATE_NOW, "pNextWeek_date"); lr_output_message("%s", lr_eval_string("{pNextWeek_date}"));
lr_save_datetime("下周这个时间是:%Y/%m/%d/%H:%M:%S", DATE_NOW + (ONE_DAY * 7), "pNextWeek_date"); lr_output_message("%s", lr_eval_string("{pNextWeek_date}"));
lr_save_datetime("%Y%m%d%H%M%S", DATE_NOW, "pNextWeek_date"); lr_output_message("用时间函数生成订单号:%s", lr_eval_string("{pNextWeek_date}"));
return 0; }
二、收到的启发(时间函数加随机数产生不重复的订单号;)非常有用;
int i; char OrderId[20]; Action() {
srand(time(NULL)); //特别注意:加上这句,每次取不同的随机值
i=rand()%10; lr_save_datetime("%Y%m%d%H%M%S", DATE_NOW,"now");
sprintf(OrderId,"%s%d",lr_eval_string("{now}"),i);
lr_output_message("订单号为:%s",OrderId); return 0; }
更多时间格式函数参考lr_save_datetime()函数及Datetime Format Codes (如下表)。
随机函数的在Loadrunner中的一些的用法
有时我在这脚本中需要随机的取下拉菜单或列表(list)中的值,那么我们就要用到随机数。下面就随机数的用法举例说明下.
实例一:
str=rand(); //生成任意随机数 str=rand()%200 //生成最大值为200的随机数 str=rand()%100+200 //生成200-300之间的随机数
举例:
int iRand;
Action()
{ srand(time(NULL)); //特别注意:加上这句,每次取不同的随机值
iRand = rand()%100; if( 30>=iRand ) { lr_output_message("The value of iRand is:%d,iRand < 30",iRand); }
else { lr_output_message("The value of iRand is:%d,iRand > 30",iRand); }
return 0; }
实例二:
在关联中的一点应用:(确定一个关联中count的值)
web_reg_save_param("search_param", "LB=<p><A HREF=", "RB=>", "ORD=All"); ... search rand_selection = ( rand() % atoi(lr_eval_string("{search_param_count}")) + 1);
实例三:
产生一个新值(randselection)作为后缀去(随机)获得查找后的值
loadrunner 获取当前系统时间 今天有个朋友问我lr怎么获取当前系统时间,正好最近几天学习过,就写了几个例子给大家。 我的测试博客:http://www.51testing.com/?uid/6343 文章概述: 方法一是使用lr的参数化,非常方便,对lr熟悉的各位朋友也能马上上手,时间格式也有很多,可以自由选择 方法二是使用的time()和ctime()函数,得到日历格式的时间,2个函数使用都很方便 方法三是使用C语言的tm结构,把时间分解成若干元素,这样如果我们只想得到星期、年份、当前秒等值就非常方便,因为上面2个方法如果想得到具体的元素是非常麻烦,可能需要自己写函数把需要的串抓出来 获取当前系统时间方法一 方法描述:使用loadrunner的参数化获取当前时间 步骤: 1、将复制给aa的值参数化
2、选中abc,使用右键选择"Replace with a parameter."
3、在弹出窗口内填写参数名称为:localtime_now
4、选择参数类型为Date/Time
5、在属性选项里,选择时间格式化选项(可以选择很多种)
6、关闭属性窗口,确认函数创建窗口,参数化完成
7、将参数化的内容赋值给字符指针aa,需要使用lr_eval_string()函数转换一下 示例如下: =========================================== Action()
{
char *aa;
// aa = "abc"; //未参数前
// aa = "{localtime_now}";//参数化后
aa = lr_eval_string("{localtime_now}");//最终赋值语句
lr_message("参数化获得本地当前时间的结果是:%s",aa);
return 0;
} 运行结果:参数化获得本地当前时间的结果是:2007-07-04 14:01:39.746 =========================================== 获取当前系统时间方法二 方法描述:使用C语言日历函数获取当前系统时间 函数出处:time.h 示例如下: =========================================== Action()
{
long t;
time(&t);//获取当前时间
lr_message("直接获取当前时间的结果是:%s",ctime(&t));
return 0;
} 运行结果:直接获取当前时间的结果是:Wed Jul 04 14:01:39 2007 =========================================== 获取当前系统时间方法三 方法描述:使用tm结构获得组成分解的当前系统时间; ANSI C标准:tm表示的结构为时间分解结构(就是把时间分解为表示时间的各个组成) 结构出处:time.h 注意:tm结构的名字"tm"不可修改;结构中的9项顺序不可更改; 示例如下: =========================================== /*
标准库:time.h
ANSI C标准:tm表示的结构为时间分解结构(就是把时间分解为表示时间的各个组成) */ struct tm { int second; //取得当前秒数(在分钟后);取值区间为[0,59]
int minute; //取得当前分钟数(在小时后);取值区间为[0,59]
int hour; //取得当前小时数(从凌晨0点开始);取值区间为[0,23]
int day; //取得当前天数(从上月结束开始);取值区间为[1,31]
int month; //取得当前月份数(从1月开始);取值区间为[0,11]
int year; //取得当前年份数(从1900年开始)
int weekday; //取得当前日期数(为了获取星期几,从上个星期日开始);取值区间为[0,6]
int yearday; //取得当前年份天数(从1月1日开始);取值区间为[0,365]
int daylight; //取得当前夏令时标识符,实行夏令时的时候,daylight取得一个正数
//不实行夏令时的进候,daylight为0;
//不了解情况时,daylight为负数
}; Action()
{
long timenow;//定义保存时间的变量
struct tm *now;//定义结构指针
int a,b,c,d;//非别存储小时、分钟、秒、星期
char *week;
time(&timenow);//获取当前时间
now = (struct tm *)localtime(&timenow);//把当前时间的结构指针赋值给now
a = now->hour;//获取hour值
b = now->minute;//获取minute值
c = now->second;//获取second值
d = now->weekday;//获取week值 switch(d)//判断得到中文的星期
{
case 1:week ="星期一";//如果d=1,那么就是星期一,以下类似
break;
case 2:week ="星期二";
break;
case 3:week ="星期三";
break;
case 4:week ="星期四";
break;
case 5:week ="星期五";
break;
case 6:week ="星期六";
break;
case 0:week ="星期日";
break;
};
lr_message ("使用结构获取的当前时间为:%d:%d:%d,%s",a,b,c,week);
return 0;
} 运行结果:使用结构获取的当前时间为:14:1:40,星期三 ===========================================
Loadrunner时间函数、用时间生成订单编号例子的更多相关文章
- java生成订单编号
随着项目用户数量的扩大,高并发随之而来.那么如何在当前系统生成唯一编号呢? 一台数据库可以用自增,集群呢?当然也有随之的解决方案,但是最好的还是在项目生成了唯一的编号再插入到数据库.而不是数据库插入了 ...
- JAVA生成订单编号工具类
JAVA根据时间戳和随机数方式生成订单编号工具类 OrderUtils.java package com.util; import java.text.DateFormat; import java. ...
- mysql时间函数和时间操作
补 原文链接:http://blog.csdn.net/yuxiayiji/article/details/7480785 select timediff('23:40:00', ' 18:30:00 ...
- sqlite 时间函数及时间处理
SQLite分页显示:Select * From news order by id desc Limit 10 Offset 10这篇文章是根据 SQLite 官方 WIKI 里的内容翻译,如果有什么 ...
- DB2时间函数 实现 时间加减
时间加减:后边记得跟上时间类型如day.HOUR TIMESTAMP ( TIMESTAMP(DEF_TIME)+1 day)+18 HOUR DB2时间函数是我们最常见的函数之一,下面就为您介绍 ...
- Oracle计算时间函数(对时间的加减numtodsinterval、numtoyminterval) (转)
原文来自:http://blog.itpub.net/756652/viewspace-697256/ 11g interval分区,按天分区,需要用到函数numtodsinterval. cre ...
- 编写Java程序,模拟网上商城购物,当用户选好物品提交订单时,每笔订单会自动生成一个唯一的订单编号。
查看本章节 查看作业目录 需求说明: 模拟网上商城购物,当用户选好物品提交订单时,每笔订单会自动生成一个唯一的订单编号.而部分电子商务网站在数据高峰期时,一毫秒可能需要处理近千笔的订单 现在简单模拟 ...
- [转帖]PG的时间函数使用整理如下
PG的时间函数使用整理如下 https://blog.csdn.net/dahuzix/article/details/48576945 1.获取系统时间函数 -- :: -- :: -- :: 2. ...
- PHP的函数-----生成随机数、日期时间函数
常用的函数 [1] 生成随机数 rand(); 例子: echo rand(); 显示结果: 当刷新时,会有不同的数,默认生成随机数.生成随机数不能控制范围. 如果,想要控制在范围之内,就用: e ...
随机推荐
- 【原】iOS学习之应用之间的操作
关于应用之间的相互操作,小编一直觉得非常高大上,在一次面试中被面试官一顿暴虐,今天小编就决定学习一下!经过一顿度娘,找到一些博客,不过都比较凌乱,我就打算自己整理一下! 首先要说的是每一个APP都可以 ...
- SQLServer CASE WHEN 用法
SELECT sc.NAME AS 学校名称 ,xueyuan.NAME AS 院系 ,StudentNo AS 学号 ,st.StudentName AS 学生姓名 ,st.sex AS 性别 ,s ...
- [ACM训练] 算法初级 之 数据结构 之 栈stack+队列queue (基础+进阶+POJ 1338+2442+1442)
再次面对像栈和队列这样的相当基础的数据结构的学习,应该从多个方面,多维度去学习. 首先,这两个数据结构都是比较常用的,在标准库中都有对应的结构能够直接使用,所以第一个阶段应该是先学习直接来使用,下一个 ...
- Linux 学习记录
整理学习Linux操作系统遇到的不理解的概念.逐个进行补充.我们用的版本是CentOs. what's the gcc? what's the yum? what's the wget?
- JAVA面试逻辑题1
一.计算推理 烧香问题: 有两根不均匀分布的香,每一根烧完的时间都是一小时.用什么办法确定一段15分钟的时间? 解题步骤: 1.点燃第一根的两头,同时点燃第二根的一头: 2.等到第一根燃尽以后,再点燃 ...
- 安卓端网页浏览过程中实时更新title的web实现
$(function () { var scrollTop = 0, //缓存上一次触发scroll的时候的scrollTop值 appendIndex = 0, //由于第23行append这个操作 ...
- [LintCode] Climbing Stairs 爬梯子问题
You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...
- Android6.0动态获取权限
Android6.0采用新的权限模型,只有在需要权限的时候,才告知用户是否授权,是在runtime时候授权,而不是在原来安装的时候 ,同时默认情况下每次在运行时打开页面时候,需要先检查是否有所需要的权 ...
- 关于mySQL自连接的一些用法
自连接是连接的一种用法,但并不是连接的一种类型,因为他的本质是把一张表当成两张表来使用. 举例说明: 这是一张职员信息表,如果我要查询这张表中的每个职员的上司,那么必须使用自连接来查询.所以为了能实现 ...
- C及C++中typedef的简单使用指南
又是在学数据结构的时候,发现了之前学习的知识遗忘很多,在发现对C/C++中关键字typedef的理解还是没有到位后,我翻阅了学C++用到的课本,又问了度娘,也看了不少关于typedef用法的博客.于是 ...