【发布时间】:2011-01-04 12:25:30
【问题描述】:
我正在寻找使用 Spring 设置单元和集成测试的最佳实践。
我通常使用 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" })" 重复很多。
有什么建议吗?
问候, 弗洛里安
【问题讨论】:
-
您找到适合您的解决方案了吗?
标签: java unit-testing spring maven-2 integration-testing