I Agree Line Smiley

SAP/ABAP 生 기초

ABAP Debugging 옵션

지코딩 2023. 4. 14. 14:26

SAP ABAP의 꽃을 한 가지 뽑으면 저는 당연히 'Debugger'를 뽑겠습니다.

 

ABAP에서 DebuggerABAP Workbench에 통합된 Tool이며 다른 언어와는 다르게 ABAP ABAP에디터와 디버깅 화면을 자유롭게 변환할 수 있는 장점이 있습니다.

 

디버깅을 사용하다 보면 보통 사용하던 디버깅 기능만 쓰게 되는데 생각보다 디버깅의 능력은 대단합니다.

 

오늘은 그중 간단하게 몇 가지 디버깅 기능에 대해 소개하겠습니다.

 


| 기능키 |

기능키는 디버깅에 가장 기본이 되는 기능으로 ABAP을 사용하는 개발자는 자연스럽게 익히는 기능입니다.

 

디버깅 기능키는 4가지가 존재합니다.

 

 (F5) : 디버깅 포인트를 한 칸씩 다음단계로 이동합니다.

 

(F6) :  한단계씩 이동하며, 서브루틴을 만나면 실행 후 다음 단계로 이동합니다.

 

(F7) :  현재 실행중인 서브루틴을 빠져나오고 다음 단계로 이동합니다.

 

(F8) : 다음 디버깅 포인트로 이동하며, 마지막 디버깅 포인트에서 누르면 프로그램을 실행시킵니다.

 


| Watchpoint |

Watch Point는 해당 버튼을 통해 실행시킬 수 있으며 이를 지정하면 조건 값이 만족할 때 관찰점이 작동하며, 해당 지점에서 프로그램이 정지한다.

Watch Point를 생성하고 F8을 누르면 원하는 조건의 달성됐을 때 디버깅포인트가 이동됩니다.

이렇게 조건을 통해 프로그램의 원하는 순간에 디버깅을 걸 수 있습니다.

 


| Debugging point 강제 삭제|

프로그램을 개발하다 보면 Debugging Point가 사라지지 않는 현상이 생기곤 합니다.

( 왜 이런 현상이 생기는지는 잘 모르겠습니다..ㅠㅠ)

 

그럴 때 Braek point Display를 통해 디버깅 포인트를 강제로 삭제할 수 있으며, 어떤 디버깅 포인트가 있는지 조회할 수 있습니다.

 

두 개의 디버깅 포인트를 가지고 실험해 보겠습니다.

 

프로그램 개발 화면에서 Utileties -> Breakpoints -> Display를 클릭합니다.

해당 프로그램의 디버깅 포인트 리스트를 확인할 수 있으며, 원하는 포인트를 선택 후 삭제버튼을 누르면 디버깅 포인트를 해제할 수 있습니다.

 

일반적인 경우에는 디버깅 포인트를 지정한 뒤 다시 클릭하여 삭제를 하지만 삭제가 안 되는 경우나 전체 디버깅 포인트를 조회 후 삭제하고 싶을 때 사용하면 아주 유용하게 사용할 수 있습니다!!

 

Select 절에 디버깅 포인트를 삭제하니 디버깅 포인트가 하나 남은 걸 확인할 수 있습니다.