티스토리 뷰

 

🍍ReflectionTestUtils.invokeMethod

Spring Framework의 Testing 모듈에서 제공하는 유틸리티 메소드 중 하나로, 

리플렉션(reflection)을 사용하여 테스트 대상 클래스의 private 메소드를 호출하는 데 사용


 

로컬에서 돌리는 것이 어려워서 테스트 코드를 작성해서 돌리던 중

private라서 테스트가 안된다 에러를 만남..

 

private를 public으로 잠깐 바꿔주고 테스트해도 될 것 같긴 했는데

그건 좀 아닌 것 같아서 팀원분에게 물어봤는데

ReflectionTestUtils.invokeMethod 사용법을 알려주셨다

 

A classmethod

public class A {

	private 타입 b(파라미터1, 파라미터2){
    
    }
}

A a = new A();
혹은 @Autowired 해서 위에 선언해도 됨

ReflectionTestUtils.invokeMethod(a, "b", 파라미터1 , 파라미터2)

 

이런식으로 사용하면 되는데 

가장 하단에 보이는 것과 같이 클래스 , 메소드, 파라미터 들을 쭉 쓰면 된다

alt+엔터치면 인텔리제이에서는 import 되니깐 참고!

 

'Spring' 카테고리의 다른 글

[spring] @PathVariable  (1) 2023.11.13
[spring] Query String 쿼리 스트링  (0) 2023.11.13
[SpringMVC] DAO & DTO & VO  (0) 2023.10.04
문자열 유효성 검증 유틸 메소드 StringUtils.hasText(String)  (0) 2023.09.27
ProceedingJoinPoint  (0) 2023.09.26