单元测试中的Spring Context通配符

时间:2011-02-15 14:52:03

标签: unit-testing spring maven classpath

我们这里有一个项目设置,它非常广泛地使用Maven配置文件。我们使用Spring,虽然我们大多数都有基于注释的配置,但是需要一些XML配置文件。

这些Spring XML配置文件包含各种不同的配置文件,在实际的Web应用程序中,它们全部放在WEB-INF / spring中并加载classpath:spring/spring-*.xml。这很好。

问题是单元测试:我想测试各种不同的配置文件,而Spring似乎有一个通配符规范的问题,就像当文件分布在几个目录上时一样。

我认为最简单的解决方案就是在@ContextConfiguration测试注释中指定每个配置文件,但不幸的是,如果缺少一个Spring会引发异常,并且似乎没有办法解决这个问题。关闭。

我认为另一件事可能是在运行测试之前将所有spring配置文件转储到一个文件夹中,但这似乎有点像kludge。

我只是想知道是否有其他人对这个问题有任何经验和任何解决方法。

1 个答案:

答案 0 :(得分:3)

看来Spring的家伙已经thought of this了。

您可以使用以下语法:

classpath*:spring/spring-*.xml

这似乎正常。