SilkTestCategories クラスを使用して、アノテーションを使用した Silk4J テストの実行、TrueLog の書き込み、およびテストのフィルタやグループ化を行うことができます。テスト クラスのカテゴリを定義して、Silk4J テストをこれらのカテゴリにグループ化することで、指定したカテゴリ、またはカテゴリのサブタイプに属しているテストのみを実行できます。詳細については、「Grouping tests using JUnit categorie」(JUnit カテゴリを使用したテストのグループ化) を参照してください。
Silk4J テストをカテゴリに含めるには、@IncludeCategory アノテーションを使用します。
カテゴリ SilkTestCategories クラスを使用して、カテゴリに含まれる Silk4J テストに対して TrueLog を書き込むことができます。また、SilkTestSuite クラスを使用して TruelLog を書き込みこともできます。詳細については、「コマンド ラインからテスト メソッドを再生する」を参照してください。
次の例では、カテゴリに含まれる Silk4J テストを実行する方法を紹介します。
import org.junit.experimental.categories.Category;
public interface FastTests {} public interface SlowTests {}
@Category( { SlowTests.class}) public class A { @Test public void a() { ... } @Test public void b() { ... } }
public class B { @Test public void c() { ... } @Category(FastTests.class) @Test public void d() { ... } }
@Category( { SlowTests.class, FastTests.class }) public static class C { @Test public void e() { ... } }
@RunWith(SilkTestCategories.class) @IncludeCategory(SlowTests.class) @SuiteClasses( { A.class, C.class }) // Note: SilkTestCategories is a kind of Suite public static class SlowTestSuite {}