我有一个使用 Visual Studio 2012 编写的针对 .Net 4.5 的 Web 应用程序,从历史上看,它是通过构建解决方案、压缩然后 ftp'd 到生产服务器上手动部署的。
我希望自动执行此部署,因此我有一个托管 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