-
[UiPath 기초] 3. 디버그(Debug) - 3UiPath RPA/개념 및 기초다지기 2019. 12. 29. 14:53반응형
디버그 마지막 시간입니다. 지난번 예고드린대로 변수값을 확인하는 방법과, 중단점(breakpoint)에 대해 중점적으로 정리해보겠습니다. 이번엔 새로운 예제를 가지고 진행해보겠습니다.
변수값을 확인하는 방법
예제를 열어보시면 Int_i 변수가 100이 넘을때까지 +1씩 더해주는 아주 간단한 예제입니다.
해당 예제를 디버그 해보시면 출력창에 "Int_i 변수의 값은 1입니다." 라는 메시지를 보실 수 있으실 것입니다. 상단의 계속버튼을 누르거나, F5키를 누르시면 출력창의 메시지는 아래와 같이 나올 것입니다.
Log Message 액티비티를 통해 출력기록된 메시지는 로그파일에도 기록됩니다. 로그는 지난시간에 알려드렸던 대로 [로그 열기] 버튼을 눌러 확인할 수 있습니다.
로그 액티비티를 통해 프로세스의 정상동작여부를 확인할때 사용하기 편할 것 같습니다. 그런데 개발중인 시스템에서 간단한 변수값의 변환상태까지 매번 로그 액티비티를 추가해가면서 확인하기엔 조금 번거로울 것 같습니다.
눈치빠르신분들은 보셨겠지만, 스튜디오에선 이미 int_i의 값이 변하는 것을 보여주고 있습니다.
로컬창에선 프로세스가 중단상태 일때 해당 액티비티에 유효한 변수 값을 보여주는 기능을 제공합니다. 변수뿐만아니라 해당 영역내 포함된 액티비티의 속성도 볼 수 있습니다.
하지만 값을 보기만 하는 것으론 부족할 수 있습니다. int_i 값이 +1에 추가로 2배씩 증가하게끔 설정한다면 매 While 반복마다 얼마나 값이 오를까요? 조사식 탭을 연 뒤, "조사..."란에 아래와 같이 입력해주세요.
Int_i * 2 그리고 결과를 확인하면 아래와 같이 값이 표시됩니다.
차이점이 보이시나요? 보다 명확한 구분을 위해 한개 더 추가해보겠습니다. 이번엔 변수 Int_i만 추가해주세요.
Int_i 그리고 결과를 확인하면,
본래의 Int_i 값을 확인할 수 있습니다. 이처럼 조사식은 단순 값의 확인뿐만이 아닌, 식이나 메소드를 추가했을때 예상되는 수정된 값의 상태를 미리 확인할 수도 있습니다.
엔터프라이즈버전 기준으로 19.10 이후에는 "즉시"라는 탭이 생겼는데 조사식과 마찬가지로 값에 식을 입력하여 데이터를 확인하는 기능을 제공합니다. Visual Studio를 사용하는 C# 개발자분들은 "C# Interactive"를 떠올리실 수 있을 것 같은데 그정도 기능까진 제공안하는 것 같습니다. 😅
사용법은 아래와 같습니다.
아직까진 조사식과 즉시의 제공기능의 차이점은 보이지 않습니다.
이것으로 2가지 주제 중 첫번째인 변수값을 확인하는 방법에 대해 알아보았습니다.
중단점(breakpoint)
첫번째 주제를 다루면서 F5키나 계속버튼을 자주자주 눌러보셨을 것입니다. 그런데 100번 반복하는 While 내 프로세스중 50번째 이후에 문제가 발생하는 오류가 있어 이를 확인하려한다면 어떻게 해야할까요? 매번 50번이 될때까지 F5키를 눌러가면서 확인하고, 수정하고 또 50번 눌러 확인하고... 별로 좋은 생각은 아닌 것 같습니다.
중단점 또는 브레이크포인트라고 불리는 기능에는 이와 같은 불필요한 프로세스 중단을 방지하기위해 조건을 설정하는 기능을 제공합니다. 이를 "조건부 브레이크포인트(=breakpoint)" 라고 부릅니다.
조건부 브레이크포인트를 설정하려면 조건을 설정해야겠죠?
조건설정은 아래와 같은 순서로 설정합니다.
1. 중단점 컨텍스트메뉴 열기
조건을 설정할 브레이크포인트를 마우스 오른쪽 버튼으로 눌러 컨텍스트 메뉴를 여세요.
2. 브레이크포인트 설정 편집
컨텍스트메뉴에서 "브레이크포인트 설정 편집"을 선택하세요.
3. 중단점 조건설정
별도의 설정메뉴창이 열렸습니다. 설정에는 2가지 방식이 존재하는데, 1가지는 특정조건에 맞았을때만 중단하는 조건설정과, 설정한 횟수만큼 반복되었을때만 중단되는 적중 횟수 방식이 있습니다.
이번 예제는 Int_i가 +1씩 증가되므로, 조건에 Int_i가 50이 되면 멈추도록 설정해보겠습니다.
OK 버튼을 누르고 다시 디버그를 시작하면,
Int_i 가 50이 되기전엔 멈추지 않았던 프로세스가 50에서 멈춘것을 확인할 수 있습니다.
이처럼 여럽게(?) 설정한 브레이크포인트를 잠시 동작되지 않도록 해야할 필요성있습니다. 이럴땐 브레이크포인트 창에서 사용하지 않을 중단점에 컨텍스트 메뉴를 열어 사용여부를 설정할 수 있습니다.
이것으로 디버그에 대한 기본적인 개념을 모두 알아보았습니다.
반응형'UiPath RPA > 개념 및 기초다지기' 카테고리의 다른 글
[UiPath 기초] 4. 셀렉터(Selector) - 2 (1) 2020.01.11 [UiPath 기초] 4. 셀렉터(Selector) - 1 (0) 2020.01.11 [UiPath 기초] 3. 디버그(Debug) - 2 (0) 2019.12.22 [UiPath 기초] 3. 디버그(Debug) - 1 (2) 2019.12.22 [UiPath 기초] 2. 변수(Variables) - 3 (4) 2019.12.15