Java에서 JMock을 사용하여 객체 구성을 조롱하는 방법이 있습니까?대상 구조물을 조롱하는 방법?
예, I는 다음과 같은 방법이 있다면 :
public Object createObject(String objectType) {
if(objectType.equals("Integer") {
return new Integer();
} else if (objectType.equals("String") {
return new String();
}
}
... 시험 방법에서 오브젝트 구조의 기대를 모의하는 방법이 있습니까?
필자는 특정 생성자가 호출되는 것을 기대할 수 있기를 바란다. 형식을 검사하기위한 여분의 비트가 아니라 (필자의 예처럼 항상 복잡하지는 않으므로).
그래서 대신
:assertTrue(a.createObject() instanceof Integer);
나는 특정 생성자의 기대를 가질 수가 호출된다. 그냥 좀 더 깔끔하게 만들고 실제로 더 쉽게 읽을 수있는 방법으로 테스트하고있는 것을 표현하십시오.
간단한 예를 용서하십시오, 나는 일하고 있어요 실제 문제는 좀 더 복잡하지만 기대를 가지는 것은 그것을 단순화 것입니다. 좀 더 배경에 대한
:
나는 래퍼 객체를 생성하는 간단한 팩토리 메소드를 가지고있다. 래핑 된 객체는 테스트 클래스에서 확보하기 어려운 매개 변수 (기존 코드)를 필요로하므로이를 구성하기가 어렵습니다.
제가 실제로 찾고 있어요에 아마 가까이 : 하나의 급습 (CGLIB를 사용하는) 전체 클래스를 조롱 할 수있는 방법이 밖으로 스텁하기 위해 모든 방법을 지정하지 않고? 그렇게 분명 방법이이를 호출 할 수 있도록 모의 생성자 래핑되는
는 각 동적 방법을 조롱 JMock 가능? 이 꽤 복잡 할 것처럼내 생각은 전혀 없다. 하지만 잘못 짚었있어 알고 너무 :-)
내 대답은 당신이있는 거 공장은 그것이 구성 수있는 각 유형 (정수 공장, 문자열 공장 등)하지만, 당신 말이 맞아 대한 자신의 공장입니다 가질 수를 참조하십시오, 그것은 지나치게 복잡쪽으로 기울고 있어요 . 당신은 아마 instanceof 테스트가 아마도 최선의 방법이라고 주장합니다. – sblundy