백앤드

[Spring] Mockito - mockmaker subclassbytebuddymockmaker does not support the creation of static method 에러 해결

머리큰개발자 2023. 3. 20. 20:20

오늘은 스프링 테스트 코드를 짜면서 에러가 있었다.

별 건 아니고 Static Method 를 이용하고 있었는데

Mockito 를 사용하여 테스트 코드를 작성하는데 에러가 발생한 것이다.

 

제목과 같이 mockmaker subclassbytebuddymockmaker does not support the creation of static method

에러 메세지가 떴는데 이는 mockito 3.4 이상 버전에서

서로 충돌이 나는 dependency 가 있기 때문이라고 들었다.

 

해결 방법은 간단하다.

 

maven 을 사용한다면 pom.xml 파일의 dependency에 

gradle 을 사용한다면 build.gradle 파일의 dependencies에

각각 mock inline 을 추가해주면 된다.

 

<!-- MAVEN -->
<!-- https://mvnrepository.com/artifact/org.mockito/mockito-inline -->
<dependency>
    <groupId>org.mockito</groupId>
    <artifactId>mockito-inline</artifactId>
    <version>2.7.21</version>
    <scope>test</scope>
</dependency>
//GRADLE
// https://mvnrepository.com/artifact/org.mockito/mockito-inline
testImplementation 'org.mockito:mockito-inline:2.7.21'

 

test 할 때만 사용하므로 

testImplementation 을 하는 것에 주목하자.

test 시에만 dependency 가 생성되므로 

배포시 부담이 적다.