我希望您能为我提供使用Spring设置单元测试和集成测试的最佳实践方法。
我通常使用三种类型的测试:
1. “真正”的单元测试(没有依赖项) 2. 作为“单元”测试运行的测试(内存中的数据库,本地调用,模拟对象等),或者作为集成测试运行的测试(持久性数据库,远程调用等) 3. 仅作为集成测试运行的测试
目前,我只有第二类测试,这是比较棘手的部分。我会设置一个基础测试类,如下所示:
这个方案可行吗(我目前无法轻易在这里进行测试)?这种方法的问题在于 "@ContextConfiguration(locations = { "/my_spring_integration_test.xml" })" 重复出现很多次。
有什么建议吗?
问候, Florian
我通常使用三种类型的测试:
1. “真正”的单元测试(没有依赖项) 2. 作为“单元”测试运行的测试(内存中的数据库,本地调用,模拟对象等),或者作为集成测试运行的测试(持久性数据库,远程调用等) 3. 仅作为集成测试运行的测试
目前,我只有第二类测试,这是比较棘手的部分。我会设置一个基础测试类,如下所示:
@ContextConfiguration(locations = { "/my_spring_test.xml" })
public abstract class AbstractMyTestCase extends AbstractJUnit4SpringContextTests
同时,“单元测试”应该像这样:
public class FooTest extends AbstractMyTestCase
使用自动装配属性。
如何在不同的(集成测试)环境中运行测试的最佳方法?子类化测试并覆盖ContextConfiguration?
@ContextConfiguration(locations = { "/my_spring_integration_test.xml" })
public class FooIntegrationTest extends FooTest
这个方案可行吗(我目前无法轻易在这里进行测试)?这种方法的问题在于 "@ContextConfiguration(locations = { "/my_spring_integration_test.xml" })" 重复出现很多次。
有什么建议吗?
问候, Florian