단일 열거 형 (How to mock an enum singleton class using Mockito/Powermock? 사용)을 조롱하는 것은 가능하지만 1000 열거 형 값이 있고 5 가지 생성자를 호출 할 수 있다는 것을 알고 있습니다. 열거 형 값은 개발 단계에서 종종 변경됩니다.JUnit 테스트 : 조롱하여 열거 형 생성자를 억제 하시겠습니까?
내 JUnit 테스트를 위해 실제로 한 두 가지만 모의하고 싶습니다. 나머지는 신경 쓰지 않지만 파일 시스템에서 열거 형의 값을로드하는 불쾌한 요소를 호출하는 여전히 인스턴스화되어 있습니다.
예 알아요. 매우 나쁜 디자인입니다. 그러나 지금은 그것을 바꿀 시간이 없습니다.
현재 Mockito/powermock을 사용 중입니다. 그러나이 프레임을 해결할 수있는 프레임 워크 **는 나쁜 디자인을 환영한다는 것을 의미합니다.
의 내가이 비슷한 열거 있다고 가정 해 봅시다 :
public static enum MyEnum {
A(OtherEnum.CONSTANT),
B("1"),
C("1", OtherEnum.CONSTANT),
//...and so on for again 1000 enum values :(
private double value;
private String defaultValue;
private OtherEnum value;
/* Getter/Setter */
/* constructors */
}
열거 형에서 _setter_? 어, sh **가 맞는 단어입니다. – fge
빠른 수정은'enum'이 조롱 될 수있는'interface'를 구현하는 것일 수도 있습니다. 해킹이지만 지금 테스트를 작성한 다음 리팩터링해야합니다 –
[JMockit] (https://code.google.com/p/jmockit/)을 살펴보십시오. –