51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1402|回复: 1
打印 上一主题 下一主题

[求助] 使用loadrunner如何给日期进行参数化

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2017-7-21 14:24:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
求大神不吝赐教:
场景为:根据一些查询条件,查询结果,查询条件中包含起止时间,如何给开始时间和结束时间分别进行参数化。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2017-9-6 22:50:00 | 只看该作者
1、先从最简单的场景来看,LR 中对日期进行参数化的方法:
a. 选中要参数化的内容,右键单击,选择 Replace with a new parameter,在 Parameter type list 里选择 “Date/Time”。

Parameter type

b. 打开 Parameter Properties 对话框里选择适用于你接口要求格式的日期格式,记住,勾选上“Prior to current”,“Update value” 项选择 'Each occurrence',这样每次执行到这个参数时,都会取当时最新的日期。

Date/Time

2、复杂一点的场景,比如问题中的查询区间,我们怎么去实现一天内的、一周内的、一个月内的查询条件,这里就要用到 LR 的自带函数: lr_save_datetime:
void lr_save_datetime(const char *format, int offset, const char *name);
lr_save_datetime 将当前日期和时间,或具有指定偏移的日期和时间保存在参数中
参数说明:
1、const char *format 格式化信息,同fopen、lr_message等相同;例如:"开始时间是 %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(明天)
3、const char *name 参数保存的参数名
通过这个函数取得我们想要的日期场景的值,然后在接下来的接口脚本中直接使用该参数即可。
lr_save_datetime("%y-%b-%d",DATE_NOW-2*24*(ONE_HOUR),"startTime");
lr_save_datetime("%y-%b-%d",DATE_NOW,"endTime");
url=http://api.xxxxx.cn/userInfo/queryOrder?phone={phone}&startTime={startTime}&endTime={endTime}

评分

参与人数 1测试积点 +10 收起 理由
lsekfe + 10 奖励原因:乐于助人

查看全部评分

回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-21 05:42 , Processed in 0.069091 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表