EasyMock 소개

본고는 EasyMock을 사용한 간단한 소개를 제공하는데 내용 전재는 EasyMock 사용 방법 및 원리 분석에서 선택되었다.더 상세한 소개는 이 문장을 참고하세요.
단원 테스트에서 우리가 자주 겪는 문제는 응용 중의 다른 협동 모듈이 아직 개발되지 않았거나 테스트 모듈에 의해 구조가 쉽지 않고 복잡한 대상과 상호작용을 해야 한다는 것이다.또한 다른 모듈의 정확성을 확신할 수 없기 때문에 테스트에서 발견된 문제가 어느 모듈에서 발생했는지 확정할 수 없습니다.이런 상황에서 우리는 격리가 필요한 대상을 모의하여 테스트와 테스트 경계 이외의 대상을 분리할 수 있다.이것이 바로 이른바 Mock 방법이다.
그러나 사용자 정의 Mock 객체를 수동으로 작성하는 것은 시간이 걸리고 오류가 발생하기 쉽습니다.EasyMock은 동적으로 Mock 객체를 구성하는 기능을 제공합니다.EasyMock은 지정된 인터페이스에서 간단한 방법으로 Mock 객체를 생성하는 데 사용되는 라이브러리입니다.이것은 인터페이스에 대한 시뮬레이션을 제공하여 녹화, 재생, 검사 세 단계를 통해 대체적인 테스트 과정을 완성할 수 있으며, 방법의 호출 종류, 횟수, 순서를 검증할 수 있으며, Mock 대상이 지정한 값을 되돌려주거나 지정한 이상을 던질 수 있다.EasyMock을 통해 우리는 편리하게 Mock 대상을 구성하여 단원 테스트를 순조롭게 진행할 수 있다.
EasyMock을 사용하여 셀 테스트를 수행하려면 1.EasyMock을 사용하여 Mock 객체 생성하기;2. Mock 객체의 예상 동작과 출력을 설정합니다.3. Mock 객체를 Replay 상태로 전환합니다.4. Mock 대상 방법을 호출하여 단원 테스트를 진행한다.5. Mock 객체의 동작을 검증합니다.
다음은 EasyMock의 사용을 java.sql.ResultSet ,으로 살펴보겠습니다.
우선, 당연히 easymock을 다운로드해야 합니다.jar,classpath에 추가합니다.이지mock 공식 홈페이지에 오르내리시면 됩니다.ResultSet의 창설은 복잡한 과정이다. 먼저 데이터베이스 연결을 얻은 다음에 Statement을 창설해야 마지막에 ResultSet 。 , “ ” ResultSet , , E asymock의 출력을 설정할 수 있다.
아래 위 코드:
 
ResultSet mockResultSet = org.easymock.EasyMock.createMock(ResultSet.class);//  Mock  

mockResultSet.getString("name");//  Mock  
EasyMock.expectLastCall().andReturn("My return value");//  Mock  

EasyMock.replay(mockResultSet);//  Mock   Replay  

// mock : :"My return value"
System.out.println(mockResultSet.getString("name"));

org.easymock.EasyMock.verify(mockResultSet);
 
EasyMock은 아직도 많은 유용한 기능을 보여 주지 않았다. 예를 들어 설정 방법의 호출 횟수, 예상 투매의 이상 설정 등이다. 을 상세하게 소개한다.https://www.ibm.com/developerworks/cn/opensource/os-cn-easymock/

좋은 웹페이지 즐겨찾기