스튜디오 레벨 디버깅의 활용

uipath studio에서는 디버깅 모드 실행을 제공한다.

디버깅 모드는 지정된 포인트 혹은 에러에 도달했을 때, 멈춰서 변수들이나 현재 프로세스의 상태를 보여주는 모드이다.

활용 방식

1. Breakpoint

2. Locals

3. Watch

4. Immediate

 

1. Breakpoint [단축키 F9]

- breakpoint는 잠깐 멈추는 지점을 의미한다. [다른 언어들도 공통되는 개념]

- breakpoint로 지정된 line(또는 activity)은 실행되지 않고 그 직전까지 실행된다.

- breakpoint로 지정하면 빨간색 표시가 뜬다.

- breakpoint로 멈추는 것에 조건을 줄 수도 있다. 그렇게 설정하면 해당 포인트에서 특정 조건이 달성되면 멈춘다.

Conditional Breakpoint

- 해당 지점에서 멈췄을 경우 Log도 따로 지정 가능하다. 이런 기능을 사용하면 로깅을 위해 굳이 if문을 만들어줄 필요가 없다. 특히 output datatable 같은 거 해서 로그 찍어놓고 확인하는 그런 경우가 많은데 굳이 그럴 필요가 없다. [이 setting도 있지만 아래에서 소개하는 기능을 활용하는 게 훨씬 편하다.]

- 스위치는 bulk로 끄고 켤 수도 있다. 

위쪽 버튼을 활용하면 한꺼번에 껐다가 한꺼번에 켰다가 할 수도 있다.

2. Locals

- Locals에는 현재 break된 곳에 있는 모든 변수의 상태값을 보여준다.

- breakpoint와 함께 활용되어 실제 값이 어떻게 들어가는지 간단하게 볼 수 있다.

- 연필모양을 누르면 값을 볼 수 있고, 값을 편집하고 그 상태로 이어서 수행하는 것도 가능하다.

Locals의 예시. break된 scope에서 call할 수 있는 변수가 모두 나온다.

3. Watch

- 변수들의 특정값을 지정해서 추적할 수 있다.

- 가령 Locals에서는 dtContainer의 값을 보여주지만, dtContainer.AsEnumerable.Skip(i_irownum).Take(i_itakenum).CopyToDataTable 같은 값은 보여주지 않는다. 하지만 그런 값을 디버깅할 때 추적해야 한다면 여기에 기입하고 추적하면 된다.

 

4. Immediate

- 값을 쓰면 즉각적으로 표시된다. 다른 언어로 치면 terminal이나 console창 느낌으로 보면 된다.

- 예를 들어, dtContainer를 쓰면 dtContainer의 내용이 표시된다.

- 추적할 값으로 설정할 필요는 없으나 즉각적으로 어떤 변수의 값을 확인하고 싶은 경우 활용할 수 있다.

- dayofweek같은 걸 추적으로 찍어놨는데 dayofweek의 .ToString('d')값과 .Tostring('g')값이 어떤 차이가 있는지 같은 걸 확인할 때 많이 쓴다.

- 드물게 특정값을 편집하는 용도로 쓸 수도 있다.

'RPA Uipath > Uipath 디버깅' 카테고리의 다른 글

[Uipath] AR 봇 연결 끊김 이슈  (0) 2024.07.31
Uipath의 디버깅 시리즈1  (0) 2023.06.10

+ Recent posts