كيفية إضافة أداة JUnit اختبار 4 أن لا تمتد من TestCase لTestSuite؟

StackOverflow https://stackoverflow.com/questions/211487

  •  03-07-2019
  •  | 
  •  

سؤال

في أداة JUnit 3 دعوت ببساطة

suite.addTestSuite( MyTest.class )

ولكن إذا MyTest هو اختبار أداة JUnit 4 التي لا تمتد TestCase هذا لا يعمل. ماذا علي أن أفعل بدلا من ذلك إلى إنشاء مجموعة من الاختبارات؟

هل كانت مفيدة؟

المحلول

لأولئك الذين لديهم مجموعة كبيرة من 3.8 الأجنحة النمط / الاختبارات التي تحتاج إلى التعايش مع نمط جديد V4 يمكنك القيام بما يلي:

import org.junit.runner.RunWith;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({
  // Add a JUnit 3 suite
  CalculatorSuite.class,
  // JUnit 4 style tests
  TestCalculatorAddition.class,
  TestCalculatorDivision.class
})
public class CalculatorSuite {
    // A traditional JUnit 3 suite
    public static Test suite() {
        TestSuite suite = new TestSuite();
        suite.addTestSuite(TestCalculatorSubtraction.class);
        return suite;
    }
}

نصائح أخرى

وجدت الإجابة نفسي: هنا

ومثل ذلك:

import org.junit.runner.RunWith;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({
  TestCalculatorAddition.class,
  TestCalculatorSubtraction.class,
  TestCalculatorMultiplication.class,
  TestCalculatorDivision.class
})
public class CalculatorSuite {
    // the class remains completely empty, 
    // being used only as a holder for the above annotations
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top