java– 在JUnit测试中自动装配Spring服务

java– 在JUnit测试中自动装配Spring服务,第1张

概述我有以下Spring服务:@Service public class MyService { public List<int> getIds(Filter filter){ ... } } 和配置类:@Configuration public static class MyApplicationContext {

我有以下Spring服务:

@Servicepublic class MyService  {   public List

和配置类:

@Configurationpublic static class MyApplicationContext {    @Bean    public Filter filter(ApplicationContext context) {        return new Filter();    }}

现在,我想创建一个单元测试来检查getIDs方法是否返回正确的结果.我创建了以下JUnit测试:

@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(classes=MyApplicationContext.class,loader=AnnotationConfigContextLoader.class)public class AppTest{    @autowired    Filter filter;    @autowired    MyService service;}

编译器为Filter类找到正确的bean,但是为服务变量抛出“BeanCreationException:Could not autowire fIEld”异常.我尝试将服务类添加到ContextConfiguration.classes,但随后编译器抛出“IllegalStateException:无法加载ApplicationContext”异常.

如何在ContextConfiguration中包含MyService?

最佳答案将以下注释添加到MyApplicationContext以获取要扫描的服务@ComponentScan(“myservice.package.name”) 总结

以上是内存溢出为你收集整理的java – 在JUnit测试中自动装配Spring服务全部内容,希望文章能够帮你解决java – 在JUnit测试中自动装配Spring服务所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1268686.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)