私は次のものを持っています(NUnitを使用):
[TestFixture]
public class SmokeTest : BaseTest
{
[Test(SmokeTest)]
public void ShouldAlwaysRun()
{
//Tests,Assertions,etc
}
[Test]
public void ShouldNotRunIfSmoke()
{
//Tests,Assertions,etc
}
}
プロジェクトの機能領域ごとに TestFixture があります。「SmokeTest」としてマークされたテストのみを実行する「煙テスト」を実行できるようにしたいと思います(おそらく属性を介して)。私はもともと独自のファイルにスモーク テストを持っていましたが、文字通り他のテストをそのファイルにコピー アンド ペーストしていました。
最終的な目標は、スモーク テストを実行しているときを何らかの方法で特定できるようにすることです。
- スモーク テストを実行している場合は、そのようにマークされたテストのみを実行します
- スモーク テストを実行していない場合は、スモーク テストを含むすべてのテストを実行します
NUnitを使用してこれをどのように達成できますか?
編集:カテゴリを見つけました:
http://www.nunit.org/index.php?p=category&r=2.2.10
これは素晴らしいことですが、特定のカテゴリのみをいつ実行するかをテスト エクスプローラーまたはビルド構成から指定するにはどうすればよいでしょうか? より良い方法がある場合に備えて、質問をそのままにしておきます。