1
 @RunWith(DataProviderRunner.class)
   @RunWith(SpringJUnit4ClassRunner.class)
    public class DatabaseModelTest {   
   // some tests
     }

或者

    @RunWith(Parameterized.class)
       @RunWith(SpringJUnit4ClassRunner.class)
       public class DatabaseModelTest {   
      // some tests
       }
  • 我们不能在一个测试用例类中使用两个 runner 属性......!!以便
  • 我想用多个数据运行测试用例我如何在 Rest web 服务中传递多个参数来执行测试用例?

  • DataProviderRunner 的扩展类或参数化的任何解决方案?

谢谢(保持连接52)

4

2 回答 2

2

您可以使用 Spring 的 JUnit 规则而不是SpringJUnit4ClassRunner. 这至少适用于Parameterized跑步者。我不知道它是否也适用于DataProviderRunner. 您至少需要 4.2.0 版的 Spring 框架和 spring-test。

@RunWith(Parameterized.class)
public class DatabaseModelTest {   
  @ClassRule
  public static final SpringClassRule SCR = new SpringClassRule();

  @Rule
  public final SpringMethodRule springMethodRule = new SpringMethodRule();

  ...
}
于 2016-01-12T18:56:33.173 回答
0

我测试了@Stefan 的解决方案并且也适用于@RunWith(DataProviderRunner.class)

我在DataProvider for Spring Integration Testing中找到了第二个解决方案,他们编写了一个DataProviderRunnerWithSpring类并将测试类设置为:

@RunWith(DataProviderRunnerWithSpring.class)
public class TestClass{ 
... 
}
于 2017-02-14T14:30:37.630 回答