如果另一个测试通过,我怎么能运行测试类?

时间:2014-10-17 08:32:42

标签: java testing junit test-suite

我正在做一些Junit测试,我需要知道如果只传递来自另一个类的特定测试,如何运行Test类。

3 个答案:

答案 0 :(得分:0)

JUnit中有'类别'功能。 (见:https://github.com/junit-team/junit/wiki/Categories

答案 1 :(得分:0)

此问题已在this post

中得到回复

在@Before函数中,您需要从系统中检索运行时值并检查它是否符合您的要求。如果不是

,一切都会停止

答案 2 :(得分:0)

恕我直言,即使在设计良好的集成测试套件中,这也是不好的做法。我鼓励您重新考虑整体测试类设计。

如果这些测试真正意味着 单元测试 ,那么它们应该是原子的并且彼此独立。请参阅this post以获得良好的阅读效果。

话虽如此,我经常使用JUnit 4.x构建&运行相当大的集成测试套件(后端功能测试,测试RESTful服务响应)。如果这是您的用例,我建议您重新构建测试,以便在TestClassA中永远不会有一个测试依赖于TestClassB中的测试。这是一个坏主意,因为它会使你的测试更加脆弱。其他开发人员很难理解你的测试意图,整体而言。

当我发现我在多个测试类中有依赖关系时,我已经考虑了一个" test-superclass"两个测试类,并做我的"设置工作"在那个超类中。或者,您可以将包含静态方法的实用程序类分解出来,以创建一些复杂的测试条件。

但是,即使使用JUnit作为运行这些"整合"测试应谨慎小心。