나는 mybatis를 사용했으며,이 부분으로 데이터베이스 TIMESTAMP를 Java XMLGregorianCalendar 객체로 변환하기 위해 커스텀 핸들러 객체를 작성해야했다. 몇 가지 테스트를 마친 후 전환이 제대로 작동하지 않는 경우를 제외하고는 전환이 작동하는 것으로 보입니다.Unit Testing MyBatis Handler
올바르게 실행되도록하려면 변환 할 수있는 것을 증명하는 테스트가 있어야 변환을 처리 할 junit 테스트를 작성하려고합니다.
XMLGregorianCalendarHandler handler = new XMLGregorianCalendarHandler();
와 나는 getResults 방법을 사용하는지 테스트하기 위해 노력하고 있습니다 : 테스트에서
, 나는 다음과 같은 한 그러나assertEquals(expectedDate , handler.getResult(rs, "timestamp"));
, 내가 어떻게 "사실에 확실하지 않다 create "테스트 결과를 처리 할 수 있도록 'rs'객체로 전달할 임시 ResultSet 객체를 만듭니다.
누구나 올바른 방향으로 나를 가리킬 수 있습니까? mybatis에 대한 객체 처리기를 테스트하는 방법에 대해서도 올바른 길을 걷고 있습니까?
실제 테스트 코드는 다음과 같습니다
@Test
public void testConvertTimestamp() throws SQLException, DatatypeConfigurationException{
String dbTimestamp = "24-APR-14 15.47.44.000000000";
XMLGregorianCalendar expectedDate = null;
GregorianCalendar c = new GregorianCalendar();
c.set(GregorianCalendar.DAY_OF_MONTH, 24);
c.set(GregorianCalendar.MONTH, GregorianCalendar.APRIL);
c.set(GregorianCalendar.YEAR, 2014);
c.set(GregorianCalendar.HOUR_OF_DAY, 15);
c.set(GregorianCalendar.MINUTE, 47);
c.set(GregorianCalendar.SECOND, 44);
c.set(GregorianCalendar.MILLISECOND, 000000000);
expectedDate = DatatypeFactory.newInstance().newXMLGregorianCalendar(c);
ResultSet rs;
assertEquals(expectedDate , handler.getResult(rs, RS_COLUMN_NAME));
}