반응형 jvm3 Junit5 구조와 아키텍처 (with Junit이 main 없이 동작하는 이유) 개발 환경: IntelliJ 2024.3.1.1(Ultimate), JDK 21, Gradle 8.13 IntelliJ IDEA 환경과 Gradle 환경에서 Junit 살펴보기 오늘은 개발자들이 Junit을 사용하면서 스쳐지나갔을 main 함수가 없는데 Junit이 동작할 수 있는 이유에 대해 알아보고자 한다. 우선 인텔리제이에서 Build And Run 설정을 IntelliJ IDEA로 설정했다. 그리고 간단한 테스트 코드를 바로 프로파일링을 해보았다. 그럼 com.intellij.rt.junit.JunitStarter.main 메서드가 제일 먼저 실행된다. 이번에는 Build And Run 설정을 Gradle로 설정했다. 이제 다시 프로파일링을 진행해보자. 우선 제일 먼저 호출되는 코드는 Gr.. 개발 2025. 4. 5. Kotest 주의할 점 (with Spring) 오늘은 실무에서 Kotest와 스프링을 같이 사용하면서 당황한 부분을 정리하고, Kotest Isolation Modes에 대해 정리할 예정이다. Kotest Isolation Modes IsolationMode라는 Enum을 활용해 테스트 케이스 인스턴스를 어떻게 생성하는지 제어할 수 있다.IsolationMode Enum은 총 3가지 값이 있다. IsolationMode.SingleInstanceIsolationMode.InstancePerTestIsolationMode.InstancePerLeaf IsolationMode.SingleInstance 해당 Enum은 Spec(Fun Spec, Behavior Spec 등) 클래스의 인스턴스가 하나만 생성되고,모든 테스트 케이스가 차례대로 실행되며, 모.. 개발 2025. 3. 21. Chapter 2, 3, 4. 디버깅 관련 정리 2. 디버깅 기법으로 앱 로직 이해하기 디버거를 사용할 때 제일 중요한 것은 '내가 조사하려는 로직이 무엇인가?'를 아는 것이다. 브레이크 포인트 앱 실행을 중단 시킬 위치는 브레이크 포인트를 찍어 표시한다.브레이크 포인트를 찍으면 해당 코드라인에서 실행이 중단되고 해당 스코프의 모든 변수와 그 값을 살펴볼 수 있다.또 실행 트레이스를 이용하면 코드 라인을 탐색할 때 현재 위치를 기억할 수 있다. 실행 스택 트레이스 실행 스택 트레이스는 마치 실제 지도처럼 디버거가 중단 시킨 코드 라인의 실행 경로를 나타내며, 이후 어디로 나아가야 할지 결정하는 데 도움을 준다.스택 트레이스는 디버거가 실행을 멈춘 지점까지 메서드가 서로 어떻게 호출하는지 나타내며, 메서드명, 클래스명, 호출한 코드 라인을 자세히 표시한.. 독서/자바 잘 읽는 법 2024. 10. 24. 이전 1 다음 반응형