Mockito测试静态注入-创新互联
注入类
@Component
public class ApplyNodesDefines implements ApplicationContextAware{
private static BaseDao baseDao;
private static volatile Map
@Override
public void setApplicationContext(ApplicationContext applicationContext) {
baseDao = applicationContext.getBean(BaseDao.class);
}
public static List getNodeDefinationList() {
Map params = new HashMap();
return baseDao.queryForList("APPLY_QUERY.APPLY_PROCESS_NODE_QUERY", params, ApplyProcessNode.class);
}
}
测试类
public class ApplyNodesDefinesTest{@Mock
br/>@Mock
br/>@Mock
br/>@InjectMocks
br/>@Mock
br/>@BeforeClass
MockitoAnnotations.initMocks(this);
ApplicationContext applicationContext = Mockito.mock(ApplicationContext.class);
Mockito.when(applicationContext.getBean(BaseDao.class)).thenReturn(baseDao );
ApplicationContextAware applicationContextAware = new ApplyNodesDefines();
applicationContextAware.setApplicationContext(applicationContext);
}
@Test
public void getNodeDefinationListTest(){
when(baseDao.queryForList(eq("APPLY_QUERY.APPLY_PROCESS_NODE_QUERY"), anyMap(), eq(ApplyProcessNode.class))).thenReturn(new ArrayList());
applyNodeDefines.getNodeDefinationList();
}
}
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享文章:Mockito测试静态注入-创新互联
转载注明:http://scyanting.com/article/cscpih.html