본문 바로가기
Tips

[Tips] 디버깅 탐구 1 - Interactive Debugging

by ifhead 2022. 8. 14.
반응형

좁은 의미에서 디버깅은 코드에서 어디에 문제가 있는지 정확히 찾아내서 고치는 것을 의미합니다.

잘못된 디버깅은 더 심각한 문제를 초래할 수 있습니다.

따라서 우리는 문제를 제대로 정의하고 절차에 따라 수정해야 합니다.

 

디버깅은 목적과 방식에 따라 분류할 수 있습니다.

디버깅의 종류

1. interactive debugging

2. integration testing

3. control flow analysis

4. log file analysis / print logs

5. unit testing

6. memory dumps

7. profiling


Interactive Debugging

디버거를 이용한 디버깅

디버거를 활용하면 동적으로 값을 변경하면서 테스트해볼 수 있습니다.

 

제어 도구

제어 도구 사용법

1. Step Over : 한 줄씩 넘어가기

2. Step Into : 내가 정의한 함수로 들어가기

3. Step Out : 함수로부터 빠져나와서 다음으로 이동

  • Variables 탭에서 현재 변수의 값들을 확인 및 변경
  • Watch 탭에서 관심이 있는 결과값을 추적 및 검사
  • Call Stack 탭에서 어떤 순서로 호출되었는지 확인 가능
  • 의심 가는 곳에서 Break Point를 설정해서 일시정지

Tips

  • Break Point를 런타임 도중에 비활성화할 수 있음
  • Watch를 설정해 두면, 변수명에 마우스를 가져가 할당값을 볼 수 있음
  • Break Point - Edit Break Point로 조건에 맞을 때만 중단할 수 있음
  • 어떤 함수 안에 중단점을 설정해둠으로써, 어느 파일이 그 함수를 사용하는지 찾아낼 수 있음
반응형

댓글