인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

ajdsasld님의 프로필 이미지
ajdsasld

작성한 질문수

스프링 핵심 원리 - 기본편

회원 도메인 실행과 테스트

회원 도메인 실행과 테스트 강의를 듣고 질문드립니다~

작성

·

52

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
여기에 질문 내용을 남겨주세요.

"회원 도메인 실행과 테스트" 강의를 따라가면서

image.png

위와같이 테스트 코드를 짠 걸 보니, Assertions 클래스의 isEqualTo 메서드가 서로 다른 객체를 어떤 기준으로 같다고 판단하는지 소스 코드로 확인해보고 싶다는 생각에, command + B로 계속 따라가봤습니다.

image.pngimage.pngimage.pngimage.pngimage.png

그래서 결국에는 대충 제가 파악하기로는, ComparisonStrategy 인터페이스에 정의된 areEqual 메서드에 따라서 진행되는 것 같은데, 그러면 테스트 코드에서 isEqualTo 메서드가 호출될 때, 위에 있는 5가지 중 하나의 구현체가 진행된다고 생각하면 되려나요? 위의 5개 중에서 어떤 게 구현되는건지는 알 수가 없는지도 궁금합니다~

 

답변 1

1

안녕하세요. ajdsasld님, 공식 서포터즈 y2gcoder입니다.

브레이크 포인트를 활용해 디버깅을 해보시면 좋을 것 같습니다 🙂

저도 한 번 해보겠습니다!

image.pngimage.png

이렇게 두 곳에 브레이크 포인트를 걸고 디버깅으로 실행하면

image.png


이렇게 브레이크 포인트를 건 곳에서 멈추게 됩니다.

image.pngimage.png


하단의 디버그 창에서 커서를 올렸을 때 위의 아이콘을 사용하면 다음 브레이크 포인트까지 프로그램을 실행합니다!

그러면 이제

image.png


여기서 화면이 멈추게 되는데 하단의 debug 탭 우측을 보시면 지금 현재 멈춘 곳에서의 각종 정보가 보입니다!

그중 comparisonStrategy를 보면 현재 사용하고 있는 구현체가 보입니다 🙂 (저는 StandardComparisonStrategy 를 사용하고 있습니다!)

image.png


 

감사합니다.

ajdsasld님의 프로필 이미지
ajdsasld
질문자

아하 이렇게 디버깅으로 구현체를 확인할 수 있네요! 자세히 알려주셔서 감사합니다:)

ajdsasld님의 프로필 이미지
ajdsasld

작성한 질문수

질문하기