web-dev-qa-db-ja.com

TestFixture属性が使用されているかどうかの違いは何ですか

TestFixture属性を持つクラスと持たないクラスの動作に違いは見られません。すべてのTearDownSetUpは同じように機能しています。この属性の使用法のセマンティクス以外に理由はありますか?

33
Sly

クラスがテストフィクスチャとなる条件を満たす場合、少なくともTestTestCase、またはTestCaseSourceでマークされたメソッドを指定する場合、NUnit2.5以降は純粋に便利ですそのクラスはテストフィクスチャとして扱われます。

ただし、TestFixture属性は、パラメーター化されたテストフィクスチャまたは汎用テストフィクスチャに必要です。その場合、属性(パラメータ/コンクリートタイプ)を介して追加情報も指定するためです。

特定の要件の詳細については、 TextFixtureAttribute(NUnit 3 Documentation) および TestFixtureAttribute(NUnit 2.0/2.5) を参照してください。

25
João Angelo

[TestFixture]を使用する場合は、頭の後ろで「うーん、これはテストクラスであり、実際にはテストフィクスチャではない」という声に我慢する必要があります。彼らがこの注釈をどのように間違えたか。

なぜtestClassではなくtestFixture を参照してください。

8
ybakos