UI 요소(UI Elements)란 앱이나 웹사이트를 만들기 위해 사용하는 부분입니다. UI 요소는 경로를 탐색할 때 사용자에게 터치포인트를 제공하면서 사용자 인터페이스(UI)에 상호작용적으로 추가됩니다. 예시로는 버튼, 스크롤바, 메뉴 항목 및 체크박스 등이 있습니다.

 

 

UI Element 알아보기

 

UI 요소에 대한 예시를 하나 들어보겠습니다. 메모장을 오픈하고 "모닝 수잔"이라는 텍스트를 입력하는 프로세스가 있다면 Open Application 액티비티로 메모장을 열고, Type Into 액티비티로 메모장에 "모닝 수잔"을 입력하는 과정으로 나누어질 겁니다.

 

아래 화면을 보시면 Type Into 액티비티 안에 Indicate element inside window라는 메세지가 있습니다. 바로 Type Into를 할 대상을 가리켜달라는 뜻입니다. 해당 메시지를 클릭하거나, 아래 화면 빨간칸과 같이 Indicate on screen을 선택하면 마우스가 손가락 모양으로 변경되면서 선택 가능한 대상이 파란색 셀로 표시됩니다. 이때, 이 파란색 셀로 표시되는 친구들이 바로 요소(element)입니다.

 

Type Into 액티비티 화면
Type Into 액티비티 화면

 

썸네일

 

UI Element 액티비티

 

그런데 UI 요소는 고정된 위치가 아니라 이동할 수도 있고 특정 시간에만 눈에 보일 수도 있습니다. 예를 들어 메모장이 켜져야 타이핑을 할 수가 있는데 컴퓨터 너무 느려서 메모장이 켜지는데 로딩 시간이 오래 걸린다면 타이핑의 대상인 UI 요소인 메모장의 Body를 찾지 못해 오류가 발생하게 될 겁니다. 그러므로 빠르고 정확한 자동화 프로세스를 구축하기 위해 RPA가 UI 요소를 잘 찾을 수 있는 프로세스를 만들어주는 것이 중요한데요, Uipath Studio에는 이를 도와주는 6가지 액티비티가 있습니다.

 

  • Find Element : 지정된 UI요소가 화면에 나타나기를 기다렸다가 UiElement 변수로 반환한다. 발견된 UI 요소에 대해 특정 작업을 수행해야 할 때 유용하다.
  • Element Exists : 보이지 않더라도 UI 요소가 존재하는지 여부를 확인하게 해 준다. IF문 액티비티에서 유용한 Boolean 변수로 반환한다.
  • Wait Element Vanish : 지정된 UI 요소가 화면에서 사라지기를 기다린다. 요소(예를 들면, 로딩 표시)가 사라지는 것이 요소가 생기는 것보다 더 믿을 만한 경우에 Find Element의 대체 방안이다.
  • On Element Appear : UI 요소가 나타나기를 기다렸다가 그 안에서 여러 작업을 수행할 수 있도록 하는 컨테이너다.
  • On Element Vanish : 지정된 UI요소가 사라진 후에 하나 또는 여러 작업을 수행할 수 있도록 하는 컨테이너다.
  • Text Exists : 주어진 UI요소 안에 텍스트가 있는지 확인한다. UI 요소가 이미지가 아닌 다른 방법으로는 접근할 수 없을 때 유용하다.

 

UI Element 액티비티 예시

 

Uipath Studio 아카데미 홈페이지에서 가져온 UI Element 액티비티 예제를 살펴보겠습니다. 인터넷 포털사이트에서 날씨를 검색하는 예제입니다.

 

1) Input Dialog 액티비티를 통해서 사용자가 날씨를 알고 싶은 도시를 입력하도록 합니다.

 

2) Open Browser 액티비티로 검색 포털사이트로 연결합니다.

 

3) Type Into와 Send Hotkey 액티비티를 사용해서 1)에서 사용자가 입력한 도시의 날씨를 검색창에 검색합니다.

 

4) Find Element와 If 액티비티를 통해서 검색 페이지가 정확하게 로딩되었는지 확인합니다.

 

아래 화면을 보시면 최초 접속 시 인터넷 검색 포털 화면 로고와 검색 실행 후 인터넷 검색 포털 화면의 로고가 다르다는 사실을 확인하실 수 있습니다. 바로 이 로고로 검색 페이지가 정확하게 로딩되어 있는지 확인할 수가 있습니다. 검색 실행 후 로고를 Find Element의 결과값(Output)으로 만들고, If 액티비티를 사용하면 True인 경우에는 검색 페이지가 정확하게 로딩이 된 것이고, False인 경우에는 검색 페이지 로딩에 실패했다는 뜻이 됩니다.

 

검색 전 후 네이버 로고 화면
검색 전 후 네이버 로고 화면

 

5) Get Full Text 액티비티를 통해서 검색 결과값을 가져옵니다.

 

6) Log Message 액티비티를 통해서 결과값을 출력합니다.

 

여기까지 진행하셨다면, Output Panel에 "현재 서울의 기온은 25도씨입니다"라는 메시지가 출력될 겁니다.

 

 

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기