Time 如何在Loadrunner中以毫秒为单位获取当前时间?

Time 如何在Loadrunner中以毫秒为单位获取当前时间?,time,epoch,loadrunner,Time,Epoch,Loadrunner,我在Loadrunner中寻找Java的System.currentTimeMillis()的等价物。我只能找到lr_save_datetime(“%x%x”,0,“now”);它以日期和时间格式输出,但不输出自纪元以来的时间 在C语言中,time.h可以提供这一功能,但在LR脚本中包含“time.h”会导致编译错误。time.h可能依赖于其他.h和.inl文件 我得到#错误:仅支持Win32目标!尽管我已经复制了所有的文件,但都是从VisualStudioC++编译器文件夹中丢失的。(C:\P

我在Loadrunner中寻找Java的System.currentTimeMillis()的等价物。我只能找到lr_save_datetime(“%x%x”,0,“now”);它以日期和时间格式输出,但不输出自纪元以来的时间

在C语言中,time.h可以提供这一功能,但在LR脚本中包含“time.h”会导致编译错误。time.h可能依赖于其他.h和.inl文件


我得到#错误:仅支持Win32目标!尽管我已经复制了所有的文件,但都是从VisualStudioC++编译器文件夹中丢失的。(C:\Program Files\Microsoft Visual Studio 9.0\VC\include\time.h)

您可以使用“time()”函数输出自1970年1月1日以来的秒数,就像UNIX样式的格式一样:

long t;  // create the variable

// output the seconds to the log
lr_output_message("seconds since 01/01/1970 : %d", 
                   time(t) ); // populate the variable
                              // with the current seconds count 
------------------------------------------------------------------
Output: Action.c(11): time : 1362080852
如果要查找当前毫秒,可以在LoadRunner中通过在“参数”列表中创建新的“日期/时间”参数并使用格式代码“%S.000”来获取。一旦安装到位,请这样称呼:

lr_eval_字符串({datetime_param_name})

例如,如果在日期/时间参数格式字段中输入此项:
%H%M%S.000

。。。对于当前的小时、分钟、秒和毫秒,您将获得…
133808.132

由于某些原因,格式代码“%S.000”在日期/时间参数列表中有效,但不适用于lr_save_datetime()函数。如果在函数上使用相同的代码,则会得到以下结果:
133808

web\u save\u timestamp\u param();返回自历元以来的13位毫秒精度时间

LoadRunner未将Visual C/C++用于C运行时引擎。它使用轻量级跨平台C编译器LCC。因此,如果您需要使用其他库进行扩展,我建议使用LCC附带的库。有关LCC的更多信息,请参阅

在参数化下选择日期和时间参数类型,我们有很多格式。请检查一下……我希望它可以解决您的问题,而无需任何编码工作

另一种方法是使用lr\u save\u timestamp以秒为单位获取时间戳–它比web\u save\u timestamp\u参数更强大

我的函数文档:

int lr_save_timestamp( const char* tmstampParam, [DIGITS,] LAST );
tmstampParam

用于存储时间戳的参数的名称

数字

可选。时间戳的位数(整数)。默认值为13(历元时间包括3位毫秒精度)

如果数字的值小于1或大于16,则使用默认值

在本例中,保存时间戳并指定10位的长度。以秒为单位返回历元时间

lr_save_timestamp(“param”, “DIGITS=10″, LAST );

您可以使用ftime实用程序功能。它接受指向timeb结构的指针,并用当前时间值填充其

timeb结构定义如下:

struct timeb {
   time_t time; //seconds since epoch
   unsigned short millis; //milliseconds since time field
   short timezone;
   short daytimesaveflag;
} 
根据LR函数参考使用ftime函数,您需要定义timeb结构(不包括time.h

  struct timeb {
   long time; //seconds since epoch
   unsigned short millis; //milliseconds since time field
   short timezone;
   short daytimesaveflag;
} timestruct;
long millisSinceEpoch=0 
ftime(&timestruct);
millisSinceEpoch=timestruct.time_t*1000+timestruct.millis;