首页 > 解决方案 > 在单元测试中自动装配@components null

问题描述

我有一堂课:

@Component
public class B {
    @Autowired
    private A a; 
}

A 是一个分量:

@Component
public class A{}

在单元测试类 BTest 中:

public class BTest {
    @Test
    public void testBMethod() {
    }
}

我没有使用 xml 来定义上下文或从中挑选 bean。

我可以让测试运行的最干净的方法是什么?

标签: springjunitjunit4spring-framework-beans

解决方案


您不必使用 Spring 进行单元测试。Mockito可以用于此。

public class BTest {
    @Mock
    private A a;

    @Mock
    private B b;

    @Test
    public void testBMethod() {
    }
}

有关更多详细信息,您可以查看https://springframework.guru/mocking-unit-tests-mockito/https://dzone.com/articles/use-mockito-mock-autowired


推荐阅读