質問

VS2008で自動的に生成されたテストは、追加するだけでNUnitと互換性があると言われました

#if !NUNIT
using Microsoft.VisualStudio.TestTools.UnitTesting;
#else
  using NUnit.Framework;
  using TestClass = NUnit.Framework.TestFixtureAttribute;
  using TestMethod = NUnit.Framework.TestAttribute;
  using TestInitialize = NUnit.Framework.SetUpAttribute;
  using TestCleanup = NUnit.Framework.TearDownAttribute;
  using TestContext = System.String;
  using DeploymentItem = NUnit.Framework.DescriptionAttribute;
#endif

編集:参照の問題を修正したため、質問のフォーカスがわずかに変更されました。繰り返しますが、このステートメントは、VSまたはNUnitの正しい単体テストプログラムに変更すると機能すると言われました。

elseステートメントには決して入りません。新しい質問は、条件を他の何かに変更する必要がありますか、それとも単純なものが不足していますか?

役に立ちましたか?

解決 3

さて、リチャードが私に指摘した単純な間違いを見落とした後、私は何をすべきかを見つけました。

これらをCC.NETで実行しているので、変数を簡単に取り出してcmdでwindows変数を設定し、nunit-console.exeでdllを実行しました。

VS2008とNUnitのテストプログラムを行き来することに本当に関心がない場合は、プリコンパイルコードを取り出すだけで、VSのifの内容とNUnitのelseの内容を残すことができます。

他のヒント

VSテストアセンブリの代わりにNUnitアセンブリを参照しましたか?

同じプロジェクトでテストを変換したり、NUnitテストとVSテストの両方を実行しようとしていますか?変換している場合、検索&を使用できるはずです。置き換えてほとんどの変更を行います。

VSテストからNUnitへの変換を行ったところ、構文の違いが1つ見つかりました。IsInstanceOfTypeメソッドでは引数の順序が異なります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top