1

Loadrunner で Java の System.currentTimeMillis() に相当するものを探しています。lr_save_datetime("%x%X", 0, "now"); しか見つかりませんでした。エポックからの時間ではなく、日付と時刻の形式で出力します。

C では、time.h でこれを提供できますが、LR スクリプトに #include "time.h" を含めると、コンパイル エラーが発生しました。time.h は、おそらく他の .h および .inl ファイルに依存しています。

#error ERROR: Only Win32 target supported! が表示されました。Visual Studio の C++ コンパイラ フォルダーから、欠落していると訴えたすべてのファイルをコピーしたにもかかわらずです。(C:\Program Files\Microsoft Visual Studio 9.0\VC\include\time.h)

4

5 に答える 5

2

もう 1 つの方法は、lr_save_timestampを使用してタイムスタンプを秒単位で取得することです。これは、web_save_timestamp_param よりも強力です。

関数の私のドキュメント:

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

tmstampParam

タイムスタンプを格納するパラメーターの名前。

数字

オプション。タイムスタンプの桁数 (整数)。デフォルトは 13 (3 桁のミリ秒精度を含むエポック時間) です。

DIGITS の値が 1 未満または 16 を超える場合、デフォルトが使用されます。

この例では、タイムスタンプが保存され、10 桁の長さが指定されています。エポック時間を秒単位で返します

lr_save_timestamp(“param”, “DIGITS=10″, LAST );
于 2014-11-16T16:16:49.587 に答える
1

「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_string("{datetime_param_name}");

例として、これを日付/時刻パラメータ形式フィールドに入力すると:
%H%M%S.000

...現在の時、分、秒、ミリ秒の場合...
133808.132

何らかの理由で、書式コード '%S.000' は日付/時刻パラメーター リストでは機能しますが、lr_save_datetime() 関数では機能しません。関数で同じコードを使用すると、次のようになります:
133808.000

于 2013-02-28T19:59:00.390 に答える
0

web_save_timestamp_param(); エポックから13桁のミリ秒の精度の時間を返します。

LoadRunnerは、CランタイムエンジンにVisual C /C++を使用しません。軽量のクロスプラットフォームCコンパイラであるLCCを使用します。したがって、追加のライブラリで拡張する必要がある場合は、LCCに付属しているライブラリをお勧めします。LCCの詳細については 、Windows用LCCのバージナ大学コンピュータサイエンス学部のWebサイトを参照してください。

于 2013-02-28T20:40:53.490 に答える
0

ftime ユーティリティ関数を使用できます。timeb構造体へのポインターを受け取り、現在の時刻値を入力します。

timeb構造体は次のように定義されます。

struct timeb {
   time_t time; //seconds since epoch
   unsigned short millis; //milliseconds since time field
   short timezone;
   short daytimesaveflag;
} 

ftime 関数を使用するための LR 関数参照に従って、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;
于 2015-01-29T13:28:23.550 に答える
-1

パラメータ化の下で、日付と時刻のパラメータタイプを選択します。非常に多くのフォーマットがあります。一度確認してください....コーディングの手間をかけずに問題が解決することを願っています

于 2014-05-06T12:18:11.617 に答える