사용자 도구

사이트 도구


java:unittest:reflectioninjector

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
java:unittest:reflectioninjector [2012/01/08 16:57]
kwon37xi 새로 만듦
java:unittest:reflectioninjector [2012/01/08 17:05] (현재)
kwon37xi [ReflectionInjector]
줄 2: 줄 2:
 Java에서 단위테스트 작성시 Setter 메소드가 없는 private 필드에 값을 삽입하는 것이 어렵다. 이 경우 보통 Spring의 [[http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/test/util/ReflectionTestUtils.html|ReflectionTestUtils]]를 사용하는데, 사용법이 복잡하여 이를 아래와 같이 단순화 하는 툴을 만들었다. Java에서 단위테스트 작성시 Setter 메소드가 없는 private 필드에 값을 삽입하는 것이 어렵다. 이 경우 보통 Spring의 [[http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/test/util/ReflectionTestUtils.html|ReflectionTestUtils]]를 사용하는데, 사용법이 복잡하여 이를 아래와 같이 단순화 하는 툴을 만들었다.
  
-다운로드 : +다운로드 : {{:java:unittest:reflectioninjector.7z|}}
  
 ===== private 필드 값 주입 예 ===== ===== private 필드 값 주입 예 =====
줄 8: 줄 8:
   * 주입하려는 객체의 타입을 명시하여 해당 타입의 필드에 주입 : ReflectionInjector.set(Class<T> clazz, Object value)   * 주입하려는 객체의 타입을 명시하여 해당 타입의 필드에 주입 : ReflectionInjector.set(Class<T> clazz, Object value)
   * 주입하려는 필드의 이름을 명시하여 해당 필드에 주입 : ReflectionInjector.set(String fieldName, Object value)   * 주입하려는 필드의 이름을 명시하여 해당 필드에 주입 : ReflectionInjector.set(String fieldName, Object value)
 +  * 대상 클래스(아래 예에서는 ArticleService)가 어떤 클래스를 상속할 경우, 부모 클래스의 필드도 값 주입의 대상이 된다.
  
 <code java> <code java>
java/unittest/reflectioninjector.1326009467.txt.gz · 마지막으로 수정됨: 2012/01/08 16:57 저자 kwon37xi