2010-05-11 3 views
3

오브젝트 그래프가 완전 직렬화 가능한지 테스트하는 데 도움이되는 라이브러리가 있는지 아는 사람 있습니까? 아마도 그것을 쓰고 다시 읽는 것만 큼 간단 할 것입니다. 그러나 나는 누군가가 이것을 이미 추상화 했음에 틀림 없다고 생각했습니다. 나는 그것을 찾을 수 없습니다.Java 직렬화 테스트

답변

2

this을 읽으십시오.

다음과 같은 고도의 재사용 가능한 기능주의 :

public void testIsSerializable() 
    throws JaxenException, IOException { 

    BaseXPath path = new BaseXPath("//foo", new DocumentNavigator()); 
    ByteArrayOutputStream out = new ByteArrayOutputStream(); 
    ObjectOutputStream oos = new ObjectOutputStream(out); 
    oos.writeObject(path); 
    oos.close(); 
    assertTrue(out.toByteArray().length > 0); 

} 

이 문서는 또한 객체가 제대로 직렬화했다 있는지 여부를 테스트하는 방법을 설명합니다.

+0

고마워, 나는 누군가가 이미 하나의 메소드 호출로 그것을 포장했다고 생각했다. –

+0

길이 테스트는 무의미합니다. 그것은 아마도 실패 할 수 없습니다. 객체 스트림에는 프로토콜에 의해 정의 된 헤더가 있습니다. – EJP

1

그것도 간단 간단하게 그것을 쓰고

에서 그것을 다시 읽어 그것은 아마 될 것입니다. 그냥 써주세요. 성공하면 모든 것이 직렬화됩니다.