我想使用Junit和Mockito编写单元测试,在这种情况下,我不想编写集成测试。我要测试的方法使用了通过Spring使用@Value或@Autowired注释注入的变量。如何填充注入的变量,以便在运行测试时它们不为空。在使用注释之前,我会创建变量的模拟类,并通过setter方法对它们进行设置。
我正在编写单元测试,所以我不喜欢使用@RunWith(SpringJUnit4ClassRunner.class)
。
您可以使用MockitoJUnitRunner
class SystemUnderTest {
@Autowired
private Dependency dep;
// ...
}
@RunWith(MockitoJUnitRunner.class)
public class YourTest {
@Mock
private Dependency mockDependency;
@InjectMocks
private SystemUnderTest testee;
@Test
public void testSystem() {
// at this point testee is already injected with mockDependency
}
}