2

我正在 Windows Server 2008 上运行的新 Bamboo 实例 (5.1.0.3901) 上设置构建。

NUnit 测试运行程序通过 MSBuild 启动以运行测试。我的一些在我的机器和另一台服务器上运行良好的测试现在失败了。显然,所有这些测试都取决于文化设置。据我所知,它们要么通过解析日期字符串,DateTime.Parse(string)要么将依赖于语言的错误消息与硬编码的德语预期消息进行比较。

我已经登录Thread.CurrentThread.CurrentUICulture(“en-US”)和Thread.CurrentThread.CurrentCulture(“de-DE”)。

操作系统区域设置为“de-DE”。

我怎样才能让这些测试通过而不改变它们?因为它们太多了,所以我更愿意配置 NUnit(或 MSBuild 或 Bamboo)使用“de-DE”运行所有东西。

4

1 回答 1

1

NUnit 具有以下SetUpFixture属性

标记一个类,该类包含给定命名空间下所有测试装置的一次性设置或拆卸方法。该类最多可以包含一个标有 SetUpAttribute 的方法和一个标有 TearDownAttribute 的方法。

我认为这是您在设置Thread.CurrentThread.CurrentUICultureThread.CurrentThread.CurrentCulture运行测试之前拥有的最全面的设置机会。这可能是一件短期的事情,可以帮助你。

但是,由于您似乎已经进行了很多单元测试,因此不应该真正打扰您DateTime.Parse在代码库中进行更改...

于 2013-09-25T17:33:21.057 回答