2011-03-09 8 views
1

私は、ビジネスロジックが日付に基づいて変更され、Linuxサーバーで日付/時刻をフリーズすることができれば、UATテストを支援するために役立つ製品に取り組んでいます。Linuxの日付時刻を一時停止する

サーバーの日付/時刻を次の日にロールオーバーすることを中断できますか?

唯一の方法は、日付/時刻を調整するために毎日実行するスクリプトを作成することです。

おかげ

+0

プログラミング言語(Javaなど)でテストしたいものはありますか?あるいは、システムの他の部分でそれを変更する必要がありますか? – teabot

+0

JavaとOracle。 – JamesC

+0

さて、私はJava側のこのアプローチがとても好きです。http://stackoverflow.com/questions/2001671/override-java-system-currenttimemillis/2001696#2001696 - おそらく、あなたのOracleコンポーネントに類似したものを実装できます。そうすることで、テストの時間的依存性を完全にコントロールすることができ、実際のシステムクロックを巡る必要はありません。 – teabot

答えて

2

使用LD_PRELOADとリダイレクトの時間を取得するライブラリ関数 - 例は、例えば見つけることができますhere

0

私はあなたのお勧めのように、時間をリセットするスクリプトを設定していると思います。これを行うもっとエキゾチックな方法があるかもしれませんが、最終的に結果は同じです。時間を「凍結」させる副作用があることに気をつけてください。ファイル修正日に依存するビルドシステムは、クロックが常に前進していると想定するデーモンプロセスと同様に、混乱する可能性があります。