java test扫描_xml – 如何设置spring上下文:component-scan在单元测试环境中扫描“src / main / java”而不是“src / test.java”...

在Spring MVC项目中遇到单元测试问题,测试环境中bean上下文仅扫描`src/test/java`中的bean,而无法获取`src/main/java`中的BeanFactory。单元测试代码使用`@ContextConfiguration`注解指定XML配置文件,但组件扫描未包含main目录。解决方案是实现`BeanFactoryAware`以获取BeanFactory。
摘要由CSDN通过智能技术生成

我是春天和Maven的新手.最近我构建了spring MVC项目并使用maven来管理项目结构和依赖项.

当我编写单元测试时,我遇到了一个问题,即我无法从“src / main / java”获取bean,而且似乎上下文只加载来自“src / test / java”的bean.

这是我的代码.

单元测试:src / test / java / com / web / component / form

@RunWith(SpringJUnit4ClassRunner.class)

@ContextConfiguration(locations = {"classpath*:META-INF/spring/applicationContext-web-test.xml"})

public class FormTest {

@Autowired

private BeanFactory beanFactory; // I override this bean by myself

}

配置XML文件:src / test / resources / META-INF / spring / applicationContext-web-test.xml

这里的以下组件扫描似乎只扫描src / test / java中定义的bean,而不是src / main / java.

覆盖BeanFactory类位于src / main / java / com / web / helper /中.

错误:

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.web.helper.BeanFactory] f

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值