단위 테스트시 어떻게 불필요한 문자열이 작성되는 것을 피합니까?모의 참조 객체
예를 들어 문자열 "SERIALIZED"는 약간 불필요하고 임의적 인 것 같습니다. 대신 어떤 용도로 사용 하시겠습니까?
Object update=new Object();
FileWriter writer=mock(FileWriter.class);
Serializer serializer=mock(Serializer.class);
when(cache.getWriter(update)).thenReturn(writer);
when(serializer.serialize(update)).thenReturn("SERIALIZED");
FileRecorder recorder=new FileRecorder(serializer);
recorder.receive(update);
verify(writer).write("SERIALIZED");
이 부분에는 별다른 문제가 없습니다. 당신은 단위 테스트 런타임에서 문자열을 생성하지 않습니다.이 문자열은'String' 풀로 들어가므로 한 번만 생성되어 항상 재사용됩니다. –
나는이 문제를 잘 모른다. 당신은 중복을 저장하기 위해 상수 또는 지역 변수에 "SERIALIZED"의 두 사건을 추출 할 수 있습니까? – DNA
anyString()을 사용할 수 있습니까? – yadab