Appium 시작하기 (Mac OS + Android OS)

Seunghoon Yoo·2024년 4월 24일
0
post-thumbnail

Appium 의 특징

  • Appium 이란, 모바일 애플리케이션을 자동화하기 위한 강력한 프레임워크
  • Selenium 의 확장성을 이용해 개발되어, Selenium 과 문법이 동일하여 작성하기 편리하다는 장점
    - 따라서 Appium 도 WebDriver 프로토콜을 사용한다는 포인트가 있지만, 모바일 특화 기능을 제공
  • 시작 전 환경 세팅은 조금 번거로움
  • Android OS 와 iOS 스크립트 작성 방식이 다름 (물론 동일한 앱이어도 XPATH 도 다르다)
  • Mac OS 에서는 brew를 이용해 비교적 수월하게 환경 세팅을 진행할 수 있었음.

설치 프로세스

  1. node.js 및 npm 설치

    • node.js 설치 커맨드라인 입력 : brew install node
    • 설치 후, 완료 체크를 위한 node.js 버전 확인 커맨드라인 입력 : node -v
    • 설치 후, 완료 체크를 위한 npm 버전 확인 커맨드라인 입력 : npm -v
  2. appium 설치

    • appium 설치 커맨드라인 입력 : npm install -g appium
    • 설치 후, appium 서버 실행 커맨드라인 입력 : appium
  3. Android 환경 설정 - Android Studio 설치 (여기가 좀 복잡하다)

    • https://developer.android.com/studio/?hl=ko 해당 사이트에서 Android Studio 설치

    • Android Studio를 설치하면, Android SDK 도 함께 설치된다.

    • 설치 후, 환경변수 설정을 위해 커맨드라인 입력 : vi ~/.zshrc

    • zshrc 파일 입력 모드 (i) 로 변경하여 아래 환경변수 명령어 입력 후 저장 및 나가기 (esc + :wq), 그리고 source ~/.zshrc 명령어로 파일 실행해주어야 함

    • 여기서 ANDROID_SDK_ROOT 는 사용자 PC 환경에 따라 달라진다. 구하는 방법은 Android Studio 에서 아래와 같이 확인 가능하며, SDK Tools 탭에서 이미지와 같이 설치된 목록도 함께 적용시켜주면 됨

    • 이후 Android Studio의 Device Manager 를 통해 가상 디바이스 1개를 생성 (이름은 자유롭게 해도 되지만, TestDevice 로 생성)

    • 커맨드라인 입력 : adb devices 명령어를 입력했을 때 현재 실행중인 디바이스 목록이 출력되어야 한다. 예를 들면 아래와 같다. 아래 이미지는 실행 중인 디바이스가 없어서 아무것도 나타나지 않는다.

    • 만약 실행중인 에뮬레이터(가상디바이스)나 실제 단말기가 있다면 아래와 같이 표시될 것이다.

    • Android OS 의 자동화 드라이버인 UiAutomator2 를 설치해주어야 한다. npm install -g appium-uiautomator2-driver 명령어를 입력하여 UiAutomator2 드라이버를 설치한다. appium driver list --installed 명령어를 입력하면 설치 되었는 지 확인 가능

    • 마지막으로 가상디바이스나 실제 단말기의 개발자 옵션을 활성화하고, USB 디버깅을 허용해주어야 한다.

  4. JAVA 설치

    • openjdk 설치 커맨드라인 입력 : brew install openjdk
  5. JAVA 환경변수 설정

    • JAVA 설치 후, 환경변수 설정을 위해 커맨드라인 입력 : vi ~/.zshrc
    • zhsrc 파일 입력 모드 (i) 로 변경하여 아래 환경변수 명령어 입력 후 저장 및 나가기 (esc + :wq), 그리고 source ~/.zshrc 명령어로 파일 실행해주어야 함
    • 이 때, JAVA_HOME에 들어가는 경로는 /usr/libexec/java_home 명령어를 통해 출력된 JAVA 경로를 넣어주면 됨
    • zshrc 파일 저장 및 실행 후, echo $JAVA_HOME 명령어를 통해 경로가 잘 세팅되었는 지 확인 가능
  6. Appium Inspector 설치

    • Selenium 은 개발자 도구로 손쉽게 Element의 attribute 및 xpath 값 등을 추출할 수 있지만, Appium 은 별도의 프로그램을 이용하여 Element의 값에 접근해야 한다.
    • 따라서 아래 커맨드라인을 입력하여 Appium Inspector 라는 도구를 설치해주어야 한다.
    • 커맨드라인 입력 : brew install --cask appium-inspector
    • 이 도구는 appium 서버가 실행중일 때에만 동작한다는 특징이 있다.

최종 점검

  • java --version 명령어를 입력했을 때 JAVA 버전이 출력되어야 한다.
  • echo $JAVA_HOME 명령어를 입력했을 때 JAVA 환경 변수 경로가 출력되어야 한다.
  • node -v 명령어를 입력했을 때 node.js 버전이 출력되어야 한다.
  • which node 명령어를 입력했을 때, node.js 경로가 출력되어야 한다.
  • npm -v 명령어를 입력했을 때 npm 버전이 출력되어야 한다.
  • echo $ANDROID_HOME or echo $ANDROID_SDK_ROOT 명령어를 입력했을 때, Android SDK 경로가 출력되어야 한다.
  • echo $PATH 명령어를 입력했을 때 Android platform-tools 포함되어 출력되는 지 확인한다.
  • appium --version 명령어를 입력했을 때 appium 버전이 출력되어야 한다.
  • adb devices 명령어를 입력했을 때 현재 실행 중인 가상디바이스 or 단말기 정보가 출력되어야 한다.
  • 개발자 옵션 및 USB 디버깅이 활성화된 디바이스를 띄우고, appium --address 0.0.0.0 명령어를 입력하여 appium 서버 실행을 확인한다.
profile
QA Engineer

0개의 댓글