首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Mockito单元测试范例

2013-12-15 
Mockito单元测试实例Mockito单元测试实例:public class SettingServiceTest {private ListPersonDTO per

Mockito单元测试实例

Mockito单元测试实例:

public class SettingServiceTest {        private List<PersonDTO> personList = new ArrayList<PersonDTO>();        @InjectMocks    private SettingPojoService settingPojoService;        @Mock    private SettingDAO mockSettingDAO;    @BeforeClass    public static void prepareData() throws Exception {    }        @AfterClass    public static void destoryData() throws Exception {    }        @Before    public void setUp() throws Exception {                MockitoAnnotations.initMocks(this);                 PersonDTO personDTO1 = new PersonDTO();        PersonDTO personDTO2 = new PersonDTO();        PersonDTO personDTO3 = new PersonDTO();        personDTO1.setDeptCode("BCDEF");        personDTO1.setHanderCode("BIJIAN001");        personDTO2.setDeptCode("HIJKL");        personDTO2.setHanderCode("BIJIAN002");        personDTO3.setDeptCode("OPQRS");        personDTO3.setHanderCode("BIJIAN003");        personList.add(personDTO1);        personList.add(personDTO2);        personList.add(personDTO3);    }        @After    public void tearDown() throws Exception {    }        @Test    public void test_queryHandlerCode_by_mock() {        String departmentCode = "ABC";        try {            when(mockSettingDAO.queryHandlerCode(departmentCode)).thenReturn("BIJIAN");            String code = settingPojoService.queryHandlerCode(departmentCode);            verify(mockSettingDAO, times(1)).queryHandlerCode(departmentCode);            Assert.assertEquals("BIJIAN", code);        } catch (DAOException e) {            Assert.fail(e.getLocalizedMessage());        } catch (BusinessServiceException e) {            Assert.fail(e.getLocalizedMessage());        }    }    @Test    public void test_savePerson_noral_list_by_mock() {                try {            settingPojoService.savePerson(personList);            verify(mockSettingDAO).savePerson(personList.get(0));            verify(mockSettingDAO).savePerson(personList.get(1));            verify(mockSettingDAO).savePerson(personList.get(2));            verify(mockSettingDAO, times(1)).savePerson(personList.get(0));            verify(mockSettingDAO, times(1)).savePerson(personList.get(1));            verify(mockSettingDAO, times(1)).savePerson(personList.get(2));        } catch (DAOException e) {            Assert.fail(e.getLocalizedMessage());        } catch (BusinessServiceException e) {            Assert.fail(e.getLocalizedMessage());        }    }        @Test    public void test_savePerson_null_list_by_mock() {        PersonDTO personDTO1 = personList.get(0);        personList = null;        try {            settingPojoService.savePerson(personList);            verify(mockSettingDAO, times(0)).savePerson(personDTO1);            verifyZeroInteractions(mockSettingDAO);            verifyNoMoreInteractions(mockSettingDAO);        } catch (PafaDAOException e) {            Assert.fail(e.getLocalizedMessage());        } catch (BusinessServiceException e) {            Assert.fail(e.getLocalizedMessage());        }     }        @Test    public void test_savePerson_list_only_contain_1_object_by_mock() {                personList.remove(2);        PersonDTO personDTO1 = personList.remove(1);        try {            settingPojoService.savePerson(personList);            verify(mockSettingDAO, times(1)).savePerson(personList.get(0));            verify(mockSettingDAO, times(0)).savePerson(personDTO1);            verify(mockSettingDAO, never()).savePerson(personDTO1);        } catch (DAOException e) {            Assert.fail(e.getLocalizedMessage());        } catch (BusinessServiceException e) {            Assert.fail(e.getLocalizedMessage());        }     }        @Test    public void test_deleteHandler_noral_list_by_mock() {                try {            settingPojoService.deleteHandler(personList);            verify(mockSettingDAO).deleteHandler(personList.get(0));            verify(mockSettingDAO).deleteHandler(personList.get(1));            verify(mockSettingDAO).deleteHandler(personList.get(2));            verify(mockSettingDAO, times(1)).deleteHandler(personList.get(0));            verify(mockSettingDAO, times(1)).deleteHandler(personList.get(1));            verify(mockSettingDAO, times(1)).deleteHandler(personList.get(2));        } catch (DAOException e) {            Assert.fail(e.getLocalizedMessage());        } catch (BusinessServiceException e) {            Assert.fail(e.getLocalizedMessage());        }    }        @Test    public void test_deleteHandler_null_list_by_mock() {        PersonDTO personDTO1 = personList.get(0);        personList = null;                try {            settingPojoService.deleteHandler(personList);            verify(mockSettingDAO, times(0)).deleteHandler(personDTO1);            verifyZeroInteractions(mockSettingDAO);            verifyNoMoreInteractions(mockSettingDAO);        } catch (DAOException e) {            Assert.fail(e.getLocalizedMessage());        } catch (BusinessServiceException e) {            Assert.fail(e.getLocalizedMessage());        }     }        @Test    public void test_deleteHandler_list_only_contain_1_object_by_mock() {                personList.remove(2);        PersonDTO personDTO1 = personList.remove(1);                try {            settingPojoService.deleteHandler(personList);            verify(mockSettingDAO, times(1)).deleteHandler(personList.get(0));            verify(mockSettingDAO, times(0)).deleteHandler(personDTO1);            verify(mockSettingDAO, never()).deleteHandler(personDTO1);        } catch (DAOException e) {            Assert.fail(e.getLocalizedMessage());        } catch (BusinessServiceException e) {            Assert.fail(e.getLocalizedMessage());        }     }        @Test    public void test_isDepartmentHandler_by_mock() {                String code = "BIJIAN001";        String departmentCode = "ABC";        try {            when(mockSettingDAO.isDepartmentHandler(code, departmentCode)).thenReturn(true);            boolean res = settingPojoService.isDepartmentHandler(code, departmentCode);            verify(mockSettingDAO, times(1)).isDepartmentHandler(code, departmentCode);            Assert.assertEquals(true, res);        } catch (DAOException e) {            Assert.fail(e.getLocalizedMessage());        } catch (BusinessServiceException e) {            Assert.fail(e.getLocalizedMessage());        }     }}

?

热点排行