Unit testing 单元测试中的Spring上下文通配符
我们在这里有一个项目设置,它广泛使用Maven概要文件。我们使用的是Spring,尽管我们主要使用基于注释的配置,但仍需要一些XML配置文件 这些SpringXML配置文件使用各种不同的配置文件拉入,在实际的web应用程序中,它们都放在web-INF/Spring中,并用Unit testing 单元测试中的Spring上下文通配符,unit-testing,spring,maven,classpath,Unit Testing,Spring,Maven,Classpath,我们在这里有一个项目设置,它广泛使用Maven概要文件。我们使用的是Spring,尽管我们主要使用基于注释的配置,但仍需要一些XML配置文件 这些SpringXML配置文件使用各种不同的配置文件拉入,在实际的web应用程序中,它们都放在web-INF/Spring中,并用类路径:Spring/Spring-*.XML加载。这个很好用 问题是单元测试:我想测试各种不同的配置文件,而Spring似乎在通配符规范方面存在问题,比如当文件分布在多个目录上时 我认为最简单的解决方案就是在@ContextC
类路径:Spring/Spring-*.XML
加载。这个很好用
问题是单元测试:我想测试各种不同的配置文件,而Spring似乎在通配符规范方面存在问题,比如当文件分布在多个目录上时
我认为最简单的解决方案就是在@ContextConfiguration
测试注释中指定每个配置文件,但不幸的是,如果其中一个缺少,Spring会抛出一个异常,而且似乎没有办法关闭它
我认为的另一件事可能是在运行测试之前将所有spring配置文件转储到一个文件夹中,但这似乎有点困难
我只是想知道是否还有其他人有过这个问题的经验和解决方法。看来Spring的人已经有了 您可以使用以下语法:
classpath*:spring/spring-*.xml
这似乎工作正常。是的,这不是他们的错,类加载器就是这样工作的。请参见以下参考: