无法与@Test标注执行测试时,我的测试在Eclipse扩展TestCase的测试(JUnit)(N

2019-09-04 03:22发布

无法与@Test标注执行测试时,我的测试在Eclipse扩展TestCase的测试(JUnit)

当我没有从测试用例(JUnit的)延伸,但我现有的代码TestCase的扩展,因此我想保留,由于它是它工作正常。

Answer 1:

检查您不使用JUnit3亚军。

打开“运行配置”为你测试和Test选项卡请确保您有JUnit 4选择你的测试运行。

恕我直言,如果你正在改造测试套件为JUnit4,只是下降的JUnit3支持。

顺便说一句,如果切换到“JUnit 4中的赛会仍执行旧JUnit3类(您不必添加注解@Test他们)。



Answer 2:

扩展测试junit.framework 。 测试用例被认为是由JUnit4亚军JUnit3式测试。 这是对的。

要@Test注解,你不需要延伸junit.framework 。 测试用例和@Test注解工作正常



Answer 3:

扩展测试junit.framework.TestCase被认为是由JUnit4亚军JUnit3式测试。 请参阅源代码为AllDefaultPossibilitiesBuilder了解更多详情。

你可能会迫使JUnit4治疗扩展类TestCase用注解类作为JUnit4风格的测试@RunWith(JUnit4.class)但你几乎肯定不希望这样做。 如果你这样做,你的测试类仍将继承所有的从方法junit.framework.TestCase但这些方法不会被调用。 换句话说,你将继承了很多的cruft。

继承往往是共享代码一个贫穷的方式,甚至在测试中。 如果它可以从测试类把共享代码在另一个类和委托直接,做到这一点。

如果您使用JUnit 4.7或更高版本, 规则提供了另一种方式来共享代码。 规则可以通过影响或可能影响测试的行为。

在极少数情况下,由多个JUnit4测试类所需的共享代码可以在一个转轮被共享,但是由于一个测试类只能指定一个浇道,流道具有许多相同的缺点的基类。



文章来源: Not able to execute tests with @Test annotation when my test extends TestCase(Junit) in Eclipse