【发布时间】:2014-11-19 14:15:17
【问题描述】:
我有以下简单的测试用例:
var uri = new Uri("http://foo.com/bar%2Fbaz");
Assert.AreEqual("http://foo.com/bar%2Fbaz", uri.AbsoluteUri);
此测试在 .NET 4 上失败,但在 .NET 4.5 上通过,我可以使用 ReSharper 测试运行器进行测试,它提供了方便的 CLR 选择菜单。
但如果我使用 nunit 控制台运行程序运行此测试,如下所示:
nunit-console.exe /framework:4.5 "C:\Data\Projects\UriTest\bin\Debug\UriTest.dll"
我的测试失败了。我什至修改了 nunit-console.exe.config 并添加了这个:
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
添加这个之后,我开始从跑步者那里得到这个输出:
Runtime Environment -
OS Version: Microsoft Windows NT 6.2.9200.0
CLR Version: 4.0.30319.34209 ( Net 4.5 )
ProcessModel: Default DomainUsage: Single
Execution Runtime: v4.5
但我的测试仍然失败。知道为什么会这样吗?
【问题讨论】:
-
您找到解决方案了吗?我遇到了完全相同的问题...
-
我可以使用 NUnit 2.6.4 进行复制。还试图强制 NUnit 3 使用 4.0,但我的测试通过了...
标签: unit-testing nunit test-runner