无法@Mock 自动装配对象

问题描述

我有一个以下类,在该类中我无法模拟自动装配的对象,我在 SomeServiceBean 模拟上的 Tested 类中得到 null。任何帮助将不胜感激。

@DynamicReadable
@Component
public class DaoBean extends SomeBean implements Dao {

    @Autowired
    private Jdbcoperations jdbcTemplate;

    @Autowired
    private SomeServiceBean someServiceBean;

    @Override
    public void getId(String name) {
        String email = someServiceBean.getEmail(name);
        return jdbcTemplate.query("query here")
    }

}

测试类:

    @RunWith(MockitoJUnitRunner.class)
    public class DaoBeanTest {
    
        @InjectMocks
        private DaoBean systemUnderTest;
    
        @Mock
        private SomeServiceBean someServiceBean;
    
        @Mock
        private Jdbcoperations jdbcTemplate;
    
    
        @Test
        public void testId() {
            Mockito.when(someServiceBean.getEmail(Mockito.anyString())).thenReturn("johndoe@gmail.com");
            String result = systemUnderTest.getId("johndoe");
        }
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)