NUnitは、静的メソッドに適用できるMicrosoft.VisualStudio.TestTools.UnitTesting.AssemblyCleanupAttributeと同様のAssembly Teardownの概念をサポートしていますか?NUnitはAssembly Teardownのコンセプトをサポートしていますか?
これは、アセンブリ内のすべてのテストが完了した後に実行されます。私は現在、NUnit 2.6.0を使用しています。
NUnitは、静的メソッドに適用できるMicrosoft.VisualStudio.TestTools.UnitTesting.AssemblyCleanupAttributeと同様のAssembly Teardownの概念をサポートしていますか?NUnitはAssembly Teardownのコンセプトをサポートしていますか?
これは、アセンブリ内のすべてのテストが完了した後に実行されます。私は現在、NUnit 2.6.0を使用しています。
この機能はNUnitに存在することがわかりました。それはあまり明らかでないか直感的ではありません。
私がこの機能hereのために作った機能要求のCharlie Pooleによると、彼は彼からの直接の引用である以下の動作を述べています。
名前空間以外のクラスを[SetUpFixture]で装飾します。 そのクラスのメソッドを[TearDown]で飾ります。あなたが好きなら、[SetUp]で を別のものに飾ってください。あなたが求めているものとは
違い:
名はこの使用法では、それは少し非自明なります。
NUnitは、これらの任意の数を許可し、順序を保証することなくすべて呼び出します。これは設計によるものです。
これは、静的メソッドまたはインスタンスメソッドに適用できます。インスタンスメソッドの場合、クラスにはデフォルトのコンストラクタが必要で、 をテスト実行全体のライフサイクルで作成します。これは によっても示されます。
さて、これはかなりありませんが、同じ機能を実現する必要があり、そして多分彼はそれ3.0で少しきれいになります。 :)
NUnitにこのような概念はありません。しかし、TestFixtureTearDownAttribute
をメソッドに適用して、TestFixtureで取得したリソースを解放することができます。
クリーンアップする必要があるすべてのTestFixturesによって使用される管理されていないリソースがあり、MSTestプロジェクトをNUnitに移植したとき、私はこの問題にぶつかりました。 –
これをNUNitに追加する機能要求を作成しました。もしあなたが興味があれば、こちらをご覧ください:https://bugs.launchpad.net/nunitv2/+bug/1098766 –
NUnit 3では、これは例外です: 'OneTimeSetUp:SetUpFixtureでTearDownAttribute属性が許可されていません。これを '[OneTimeTearDown]'に修正します。 – MrLore