[java] Mockito를 사용하여 정적 변수를 테스트하는 방법은?

아래는 Mockito를 사용하여 정적 변수를 테스트하는 예제 코드입니다.

import static org.mockito.Mockito.*;
import org.junit.jupiter.api.Test;

public class StaticVariableTest {

    private static int staticVariable = 10;

    @Test
    public void testStaticVariable() {
        // mock() 메서드를 사용하여 정적 변수를 가진 클래스의 모의 객체를 생성합니다.
        StaticVariableTest mockObject = mock(StaticVariableTest.class);

        // 정적 변수에 값을 설정합니다.
        mockObject.staticVariable = 20;

        // 정적 변수 값을 검증합니다.
        verify(mockObject).setStaticVariable(eq(20)); // 정적 변수 값이 20인지 확인합니다.
    }

    public void setStaticVariable(int value) {
        staticVariable = value;
    }
}

위의 예제 코드에서는 StaticVariableTest 클래스의 정적 변수 staticVariable을 테스트합니다. mock() 메서드를 사용하여 StaticVariableTest 클래스의 모의 객체를 생성하고, 모의 객체의 staticVariable 값을 변경하고 검증합니다.

verify() 메서드를 사용하여 모의 객체의 setStaticVariable() 메서드가 eq(20) 값을 받아온 것을 확인합니다. 이를 통해 정적 변수 staticVariable이 20인지 검증할 수 있습니다.

위의 예제 코드는 정적 변수를 테스트하는 방법을 보여주기 위한 간단한 예제입니다. 실제로는 더 복잡한 테스트 시나리오에 맞게 Mockito를 적용할 수 있습니다.

더 많은 Mockito 관련 정보는 Mockito 공식 문서(https://site.mockito.org/)를 참고하시기 바랍니다.