.Net 4.5 をターゲットとする Visual Studio 2012 を使用して記述された Web アプリケーションを持っています。これまでは、ソリューションを構築し、圧縮してから運用サーバーに ftp することで手動でデプロイされていました。
この展開を自動化しようと考えているので、Jenkins CI をホストするビルド サーバーを用意しました。これを使用して、MSBuild.exe を使用してソースをビルドし、NUnit テストを実行します。
ビルド スクリプトをローカルで実行すると、問題なく動作し、すべてのテストに合格します。ただし、ビルド サーバー (Visual Studio はインストールされていませんが、SDK はインストールされています) でスクリプトを実行すると、ビルドは成功しますが、一部の単体テストは失敗します。
失敗を調べたところ、日付の書式設定が機能しないなど、いくつかの奇妙な問題が発生していることがわかりました。
myRequest.Date = new DateTime(1970, 2, 1)
...
myRequest.Date.ToString("dd-MM-yyyy"));
私のローカル マシンでは、これは正しく機能し、日付を01-02-1970としてフォーマットします。ただし、ビルド マシンでは、日付が02-01-1970としてフォーマットされているため、テストは失敗します。