Upgrading to JUnit4 and keeping legacy JUnit 3 tests and test suites by running them together

后端 未结 2 1306
粉色の甜心
粉色の甜心 2020-12-30 09:06

I was surprised not to find the answer so far. If I am missing something basic I will be more than happy to know that.

There is a large legacy code base that was upg

相关标签:
2条回答
  • 2020-12-30 09:20

    Just use 'JUnit4' test runner in your run configuration.

    JUnit4 binaries have a backward compatibility layer that allows it to have both JUnit3 and JUnit4 style classes in the same test suite.

    For command line builds just use JUnit4 jars instead of JUnit3.

    This was done specifically to ease migration that you are doing now.

    Also, it works fine in my project.

    0 讨论(0)
  • 2020-12-30 09:34

    The @RunWith(Suite.class) gives me opportunity to combine both JUnit 4 and JUnit 3 tests and test cases together:

    @RunWith(Suite.class)
    @Suite.SuiteClasses({
        ExampleOfJunit3TestSuite.class, 
        ExampleOfJUnit3TestCase.class, 
        ExampleOfJUnit4TestSuite.class,
        ExampleOfJUnit4TestCase.class})   
    public class BothJUnit4and3TestSuite {
    }
    

    The BothJUnit4and3TestSuite runs all tests and test suites listed in @Suite.SuiteClasses.

    0 讨论(0)
提交回复
热议问题