1

junit ランナーに複数のカテゴリを含めたい。

Java コード

@RunWith(Categories.class)
@IncludeCategory(IMAP.class , POP.class)
@SuiteClasses({MailTestSuites.class})
public class TestSuiteRunner{

}

これら 2 つのカテゴリに対してのみテスト スイートを実行したいと考えています。「IMAP、POP、SMTP、POP3」などのメール スイートのカテゴリがあります。今、私は「IMAP、POP」カテゴリのスイートのみを実行したいと考えています。junit で実行するにはどうすればよいですか?

4

2 に答える 2

1

JUnit 4.11 までのバージョンで、@IncludeCategory1@ExcludeCategoryつの値のみをサポートします。ただし、今後のリリース 4.12 からは、複数の値を渡すことができるようになります。

ソースコードのドキュメントによると、次のように記述できます。

@RunWith(Categories.class)
@IncludeCategory({IMAP.class, POP.class})
@SuiteClasses({MailTestSuites.class})
于 2014-05-14T00:16:38.550 に答える
0

@IncludeCategoryいいえ、 1 つの で複数の値を定義することはできませんでしたCategories

Categories複数を使用してテスト ケースを実行することをお勧めします。(個別の IMAP と POP のテスト ケース)

//IMAP tests
@RunWith(Categories.class)
@IncludeCategory(IMAP.class)
@SuiteClasses({MailTestSuites1.class})
public class TestSuiteRunner1{}

//POP tests
@RunWith(Categories.class)
@IncludeCategory(POP.class)
@SuiteClasses({MailTestSuites2.class})
public class TestSuiteRunner2{}

//Merge into one Test
@RunWith(Suite.class)
@Suite.SuiteClasses({TestSuiteRunner1.class, 
    TestSuiteRunner2.class})
public class AllTests {}
于 2013-03-16T12:41:32.913 に答える