LoadRunner获取当前时间

本文展示了一个使用LoadRunner创建任务的具体示例,包括任务名、负责人ID、计划开始时间等关键字段的设置过程。


    lr_save_datetime("%Y%m%d%H%M%S", DATE_NOW + TIME_NOW, "taskNames");

    lr_save_datetime("%Y-%m-%d %H:%M", DATE_NOW + TIME_NOW, "taskStartTime");

    lr_output_message(lr_eval_string("Test00{taskNames}"));

    lr_output_message(lr_eval_string("{taskStartTime}"));


    web_submit_data("addTask",
        "Action=http://192.168.1.171:8080/lms-web/a/task/addTask",
        "Method=POST",
        "RecContentType=text/html",
        "Referer=http://192.168.1.171:8080/lms-web/a/task/toAddTask",
        "Snapshot=t30.inf",
        "Mode=HTML",
        ITEMDATA,
        "Name=taskName", "Value=Test00{taskNames}", ENDITEM,
        "Name=recipient", "Value={idFile}", ENDITEM, //任务负责人的id
        "Name=auditor", "Value=", ENDITEM,
        "Name=planStarDate", "Value={taskStartTime}", ENDITEM,   //任务的计划时间
        "Name=planConsuming", "Value=12", ENDITEM,               //任务耗时
        "Name=taskContent", "Value=LoadRunner-test002{taskNames}", ENDITEM,
        "Name=taskFile", "Value=", ENDITEM,
        "Name=taskState", "Value=0", ENDITEM,
        "Name=assignmentDate", "Value={taskStartTime}", ENDITEM,
        "Name=newTreeText", "Value=", ENDITEM,
        "Name=copy", "Value=", ENDITEM,
        "Name=", "Value=", ENDITEM,
        EXTRARES,
        "Url=/lms-web/static/jquery-jbox/2.3/Skins/Blue/images/jbox-icons.png", "Referer=http://192.168.1.171:8080/lms-web/a/task/toListMine", ENDITEM,
        LAST);
<think>嗯,用户问的是如何在LoadRunner脚本中获取并使用日期参数。首先,我需要回忆一下LoadRunner的相关知识,特别是参数化和日期函数的部分。记得在LoadRunner中,参数化通常是通过Parameter List来处理的,用户可能需要生成动态的日期参数,比如当前日期或者未来/过去的日期。 然后,用户可能的需求场景是什么?比如在性能测试中,模拟不同日期的请求,或者需要日期作为唯一标识的一部分。这时候,使用固定的日期可能不够,需要动态生成,比如今天的日期加上某个天数后的日期,或者格式化的日期字符串。 接下来,我应该考虑如何具体实现。LoadRunner的VuGen支持C语言的脚本,所以可能需要用C的函数来获取系统时间,然后进行格式化。例如,使用time_t结构体和localtime函数来获取当前时间,再用strftime函数来格式化日期字符串。另外,LoadRunner自身也提供了一些函数,比如lr_save_datetime,这可能更方便用户直接调用。 另外,用户提到的引用资料中有关于参数化的方法,比如通过替换参数、设置参数属性,或者从文件、数据库导入数据。但这里用户需要的是动态生成日期参数,而不是从外部文件读取。所以重点应该放在如何在脚本中生成日期并保存为参数。 还需要考虑不同的日期格式,比如YYYY-MM-DD或者YYYYMMDD,用户可能需要不同的格式。此外,是否需要处理未来或过去的日期,比如三天后的日期,这时候需要用到日期计算,比如加上对应的秒数。 可能还需要提到如何将这些参数应用到请求中,比如在HTTP请求中使用{dateParam}这样的参数名。此外,事务和集合点的设置可能也需要结合日期参数,但用户的问题主要集中在获取和使用日期参数,这部分可能不需要深入。 最后,要检查是否有遗漏的情况,比如时区处理,或者是否需要考虑不同的区域设置影响日期格式。不过通常性能测试中可能使用UTC时间或者固定的时区,所以可能不需要深入讨论,但可以简要提及。 总结步骤:获取当前时间、格式化日期、保存为参数、在脚本中使用参数。同时提供示例代码,包括使用C函数和LoadRunner内置函数两种方法,并说明如何调整日期偏移和格式。最后,生成相关问题,帮助用户进一步学习。</think>在LoadRunner脚本中获取日期参数可通过以下两种方法实现: ### 一、使用C标准库函数 ```c Action() { char date_str[20]; time_t t = time(NULL); struct tm *tm_info = localtime(&t); strftime(date_str, sizeof(date_str), "%Y-%m-%d", tm_info); lr_save_string(date_str, "currentDate"); lr_output_message("生成的日期参数:%s", lr_eval_string("{currentDate}")); return 0; } ``` 该方法通过: 1. `time()`获取系统时间戳 2. `localtime()`转换为本地时间结构体 3. `strftime()`格式化日期字符串 4. `lr_save_string()`保存为LoadRunner参数[^3] ### 二、使用LoadRunner内置函数 ```c Action() { lr_save_datetime("%Y%m%d", DATE_NOW, "today"); lr_save_datetime("%Y-%m-%d %H:%M", DATE_NOW + ONE_DAY, "tomorrow"); web_submit_data("submit_form", "Name=orderDate", "Value={today}", ENDITEM, LAST); return 0; } ``` 特点: - `DATE_NOW`获取当前时间 - 支持时间偏移量(如`ONE_DAY`、`ONE_HOUR`) - 可自定义格式:`%d`日期、`%m`月份、`%Y`四位年份等[^2] ### 三、进阶应用示例 生成三天前日期: ```c lr_save_datetime("%Y-%m-%d", DATE_NOW - 3*ONE_DAY, "pastDate"); ``` 生成带时分的时间戳: ```c lr_save_datetime("%Y%m%d%H%M%S", DATE_NOW, "timestamp"); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值