작성
·
17
0
Subscription에 대한 테스트를 진행을 할 때 onNext에서 실행이 되는 기능들이 호출이 되지가 않아서 reviews에 담겨 있는 값이 0으로 계속 나오는데 해당 부분을 어떻게 해결을 해야할까요?
// val result = t.getData<Map<String, Any>>()
해당 부분도 컴파일 오류가 발생을 하고 있습니다.
코드 관련해서 완성본을 볼 수 있나요?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 원덕희님.
Subscription 테스트 중 onNext
메서드에서 예상한 동작이 실행되지 않아 곤란하실 것 같습니다. 이러한 문제는 Subscription
메커니즘이 정상적으로 설정되지 않았거나, 테스트 환경 설정이 불완전할 때 발생할 수 있습니다.
Subscription 테스트를 올바르게 설정하기 위해 아래의 몇 가지 팁을 제공하겠습니다:
Subscription 설정 확인:
@DgsSubscription
어노테이션 등이 바르게 설정되었는지 점검하는 것을 포함합니다.테스트 환경 설정:
@ExtendWith
와 같은 JUnit 사용 시 관련 어댑터와 함께 올바른 테스트 환경이 설정되었는지 확인합니다.Mock
객체가 사용될 경우, 이를 올바르게 초기화하고 필요한 부분의 동작을 정의하였는지 확인합니다.Subscription 테스트 작성:
graphql-java-tools
같은 라이브러리를 사용할 경우, ExecutionInput
객체를 생성하고 이를 통해 테스트를 수행할 수 있습니다.ExecutionInput.newExecutionInput()
메서드를 사용하여 Subscription 쿼리를 설정하고 이를 실행하도록 합니다.특히, 코드 오류가 발생하는 부분은 타입 캐스팅 문제일 가능성이 있습니다. 데이터 타입을 명확하게 정의하고, 필요한 경우 KT에서 !!
을 사용하여 안전하게 캐스팅을 처리해보시기 바랍니다.
관련 정보 및 유사한 질문과 답변을 참고하시려면 아래 링크를 확인하실 수 있습니다:
위의 링크에서는 Subscription 설정 및 테스트에 관한 다양한 경험들을 공유하고 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.