1

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

4

1 回答 1

0

不,有几种方法可以在单个测试类中包含多个理论。

  1. 你可能有@DataPoints不同的类型
  2. 您可能有@DataPoints相同类型的不同集合(例如,一个是有效案例,一个是无效案例)并用于assumeThat限制 a@Theory仅使用一组中的值。
  3. 您可能在同一个测试类中有@Tests 和s@Theory
  4. 您可以使用Enclosedrunner 运行多个内部类,每个内部类都有自己的一组专有@DataPoints

当然,这很大程度上取决于被测类的复杂性。但我通常混合@Theory在一起@Test并在几种情况下有多个不同的@DataPoints. 一个常见的例子是一个具有多个 setter 的类,每个 setter 采用不同的类型。

于 2012-09-07T16:42:54.423 回答