IT/RPA

[RPA] #7 UiPath 디버깅(Debugging) 하는 법

wl807 2024. 1. 22. 23:48

# 디버깅

# 한 단계씩 코드 실행

# 브레이크포인트 F9

 

<목차>

** 디버깅(Debugging)?

 

** 디버깅(Debugging)?

 

 


버그가 발생하는 것은
지극히 자연스러운 일이다.



오히려 디버깅 과정 없이 작동하는 코드를 의심해야 한다.


중요한 것은


버그를 잡아내고, 그것을 해결하는 것이다.

 

 

 

 

 

* 모든 코딩을 완료하고 디버깅을 시작한다면,

-> 전체 부분에서 오류를 확인하는 것은 어렵고, 매우 많은 시간이 소요될 수 있다.

-> 따라서 단계별로 코딩을 완료한 후 디버깅을 해가는 것이 바람직하다.

 

 

* 또한 오류 없이 정상적으로 실행될 때오히려 의심을 해보아야 한다.

-> 정상적인 상태의 항상성을 유지할 수 있는지를 끊임없이 의심하며, 내가 놓친 부분을 확인하고, 모두가 같은 결과를 얻을 수 있도록 하는 것이 핵심이다.

 

 

 

 

 

 

 

* 이처럼 디버깅 과정은 내가 작성한 코드의 신뢰성 문제에서도 매우 중요한 작업이다.

 

오늘은 UiPath에서 디버깅(Debugging)과 그 방법을 알아보려 한다.

 

 

 

 

 

 

 

1. 디버깅(Debugging)이란?

 

 

? 프로그램이나 소프트웨어에서 발생하는 오류를 찾아내고 수정하는 과정.

 

 

 

디버깅은 프로그램이 의도한 대로 작동하지 않거나, 예상치 못한 결과를 초래하는

버그를 찾아내고 수정하는 것을 목적으로 함

 

 

 

 

 

 

 

2. 디버깅 하는 법

 

1) Bug가 의심되는 위치, 또는 원하는 위치에 breakpoint 정하기

-> breakpoint는 F9 버튼을 눌러 설정한다.

 

breakpoint

 

 

 

->  버그가 의심되는 위치를 파악하기 어렵다면, 우선 디버그를 실행하여 오류를 발견하도록 한다.

 

 

 

 

 

 

2) 디버그 버튼 클릭

 

-> 디자인탭의 파일 디버그 선택 또는 디버그탭에서 버튼 클릭

 

 

이미지 탭의 디버그 버튼

 

디버그 탭의 디버그 버튼

 

(파일 분석 버튼을 클릭해도 대상 파일에 대해 전체적으로 오류를 감지해 준다.)

 

 

 

 

 

 

 

3) 감지된 버그 확인

 

(1) 버그가 발견된 경우

 

* breakpoint를 걸어둔 경우

-> 미리 걸어둔 Breakpoint 부터 단계별로 버그의 유무를 따진다.

 

* breakpoint를 따로 걸지 않고, 디버그 실행한 경우

-> 실행 중 버그가 발견되어 정지한 액티비티를 확인하며 버그를 해결한다.

 

 

 

 

 

(2) 버그가 발견되지 않은 경우

 

 

breakpoint 해제

 

 

-> F9를 한 번 더 눌러 breakpoint를 해제한다. '문제 없음'의 의미인 속이 빈 동그라미 표시로 바뀌는데,

-> 표시를 아예 지우고 싶다면 F9를 한 번 더 눌러준다.

 

 

 

 

 

 

 

4) 버그 해결

 

(1) 디버그 탭의 '한 단계씩 코드 실행'을 적절히 이용하여 단계별로 진행 상황을 확인한다.

 

디버그탭의 단계 실행

 

 

 

 

 

(2) 이와 동시에 디버그 탭의 '로컬', '보기', '즉시'를 적극 활용한다.

 

 

디버그 탭의 '로컬', '즉시'

 

 

 

 

  • 액티비티 실행으로 실시간으로 변하는 변수의 값은 '로컬'에서 확인할 수 있다

 

  • 특히 '즉시'부분에서 '>'  프롬프트 입력란에 현재 단계의 변수명을 입력하여, 변수가 담고 있는 값을 확인할 수 있다.  또한 변수에 여러 함수를 적용하며 결괏값을 미리 확인할 수 있다.

     : 예컨대 Str_Temp 라는 변수에 대하여 Str_Temp.Split(":"c)(1).Split(" "c)(3).ToString 이라는 코드를 입력해야 한다면,  '즉시' 패널을 통해 단계별로 코드를 더해가며 확인, 보다 쉽게 코딩을 할 수 있다.

 

 

 

 

 

 

 

 

 

 

 

3. 정리

 

1)

버그가 일어나는 것은 지극히 자연스러운 현상이다.

오히려 오류가 없을 시에는 끊임없이 의심하며, 수정할 부분이 있는 지를 살펴보아야 한다.

 

 

 

2)

작성한 전체 코드를 한번에 디버깅하는 것은 매우 어렵고 힘들 수 있다.

따라서 단계별로 코딩을 완료한 후 중간 점검 형식으로 디버깅을 하기를 추천

 

 

 

3)

'디버깅'패널의 '로컬', '즉시' 패널을 통해 현재 실행 단계의 변수에 대하여 미리 함수를 적용해볼 수 있다.

이를 통해 디자인 탭에서 매번 함수 실행 결과를 확인하기 위해 파일을 실행했던 것 대신,

실시간으로 확인이 가능하므로

 

파일 실행으로 인한 시간 절약이 가능하고, 또한 검증 과정이 더해지기 때문에 코드의 정확도를 높일 수 있다.