![]() |
1
7
我假设您使用的是JUnit4.x,因为您提到了参数化测试运行程序。这意味着您没有使用@runwith(springjunit4classrunner)。没问题,只是列出我的假设。 下面使用Spring从XML文件获取测试文件目录。它不会注入它,但是数据仍然可以用于测试。在静态方法中也不例外。 我看到的唯一缺点是,这可能意味着您的Spring配置被多次解析/配置。如果需要的话,您可以加载一个包含测试特定信息的小文件。
|
![]() |
2
11
可以使用Spring中的TestContextManager。在这个例子中,我使用的是理论而不是参数化。
我在这里找到了这个解决方案: How to do Parameterized/Theories tests with Spring |
|
3
5
对于2015年末或以后阅读的人来说, Spring 4.2 除了SpringJunit4ClassRunner之外,还添加了SpringClassRule和SpringMethodRule,它们利用对 Spring TestContext Framework .
这意味着对任何类似跑步者的一流支持
|
![]() |
4
4
用注释测试类就足够了
|
![]() |
5
3
我对参数化的.class使用以下解决方案,没有任何问题: http://bmocanu.ro/coding/320/combining-junit-theoriesparameterized-tests-with-spring/
|
![]() |
6
2
这里是第一个没有JUnit 4.12参数化工厂的解决方案,下面是一个改进的解决方案。 没有事务支持的静态上下文让Spring使用 TestContextManager 班级。 技巧是使用一个假测试实例来获取自动连接的字段,并将它们传递给参数化测试,该测试将有效地运行。
但请记住
prepareTestInstance()
做自动布线,但不管理测试事务和其他好东西处理
但是,如果有很多自动连线字段,则会出现一个缺点,因为必须手动将它们传递给数组参数。 带全弹簧支架的参数化工厂Junit 4.12介绍 ParametersRunnerFactory 它允许将参数化测试和弹簧注射相结合。
工厂可以添加到以前的测试类中,以提供像 test transaction , reinit dirty context 和 servlet test . 当然,不再需要将自动连线字段从假测试实例传递到参数化测试。
|
![]() |
7
0
记住,Spring注入使用@autowired,但也使用setter。因此,不要使用@autowired,而是使用setter:
|
|
user29759326 · 如何返回递归函数中的最后一个值? 6 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 6 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 6 月前 |
![]() |
rudraraj · java中未声明最终变量 6 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 6 月前 |