12

次の簡単なテストケースがあります。

var uri = new Uri("http://foo.com/bar%2Fbaz");
Assert.AreEqual("http://foo.com/bar%2Fbaz", uri.AbsoluteUri);

このテストは .NET 4 では失敗しますが、.NET 4.5 では成功します。これは、便利な CLR 選択メニューを提供する ReSharper テスト ランナーを使用してテストできます。

しかし、次のように 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

しかし、それでも私のテストは失敗します。なぜこれが起こるのか分かりますか?

4

2 に答える 2