我在要测试的类中定义了一个autowired bean:
@Autowired
ContextEnum myContext;
稍后使用:
if(ContextEnum.A.equals(myContext)) {
// do something
} else if(ContextEnum.B.equals(myContext)) {
// do something
}
在我的junits配置中,我将其设置为返回ContextEnum的特定值,如下所示:
@Configuration
@Lazy
public class myJunitConfig {
@Bean
public ContextEnum getContextEnum() {
return ContextEnum.A;
}
}
我的Junit:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = {
myJunitConfig.class
})
public class ContextTest {
@Test
public void testContextB() {
Input input = createMock(Input.class);
expect(input.getId()).return(1L).anyTimes();
client.getHandle().call();
}
}
然而,这不允许我测试我的枚举的不同值。有没有办法让我在junit上使用setter / constructor注入之外注入不同的枚举值?提前致谢。