可以在使用Theories JUnit4运行的测试类中放入多少个测试方法

时间:2012-09-07 13:49:50

标签: testing junit

它认为在测试类中放置多个测试方法是不合理的,因为在一个类中添加两组静态数据点是没有意义的。在测试类中只有一种测试方法是最佳实践吗?

1 个答案:

答案 0 :(得分:0)

没有。在单个测试类中有多种方法可以使用多个理论。

  1. 您可能拥有不同类型的@DataPoints
  2. 您可能有相同类型的@DataPoints的不同集合(例如,一个是有效案例,一个是无效的),并使用assumeThat限制@Theory仅使用一个值集。
  3. 您可能在同一个测试类中有@Test个和@Theory
  4. 您可以使用Enclosed runner来运行多个内部类,每个内部类都有自己的一组独占@DataPoints
  5. 其中大部分当然取决于被测班级的复杂程度。但我通常会将@Theory@Test混合在一起,并且在某些情况下会有多个不同的@DataPoints。一个常见的例子是具有多个setter的类,每个setter采用不同的类型。