본문 바로가기
QA

Appium

by 오탄 2025. 10. 21.

1. Appium 이란

1.1. 모바일 애플리케이션의 자동화된 테스트를 위한 오픈 소스 프레임 워크

        - Android, iOS 에서 네이티브, 하이브리드, 웹 애플리케이션 모두 테스트 가능

 

1.2. 핵심 개념

        - 크로스 플랫폼 지원: 같은 테스트 스크립트로 Android 와 iOS 앱을 동시에 테스트

        - 언어 유연성: Java, Python, Ruby, JavaScript 등 다양한 언어

        - 수정 불필요: 앱 소스 코드를 변경하지 않고 자동화 테스트 실행

        - 오픈 소스

 

1.3. 아키텍처

        - Appium Client: 사용자가 작성한 테스트 스크립트를 Appium Server 에 전달

        - Appium Server: Node.js 기반 HTTp 서버로, 클라이언트 명령을 모바일 플랫폼으로 변환

          •Android => UiAutomator2

          •iOS => XCUITest

        - 테스트 대상 디바이스: 실제 or 에뮬레이터

 

1.4. 주요 장점

        - 다양한 CI 도구와 쉽게 통합 가능(Jenkins, Bamboo 등)

        -  테스트 스크립트 작성 및 유지 보수가 편리함

        -  Appium Inspector 도구를 통해 앱 UI 요소를 식별하고 테스트 스크립트 개발에 도움

 

2. Appium 설치

     - Node.js (npm), appium, uiautomator2, SDK, JDK, Java 17

       •ADB (platform-tools), build-tools, emulator

     - 노드제이애스 > npm install -g appium (appium server 설치)

     - appium driver install uiautomator2 (드라이버 설치)

     - appium driver doctor uiautomator2 (부족한 부분 확인) => 시키는 것 하기

     - Android > USB 디버깅 On > adb devices 리스트

 

3. 기초 사용법 배우기

     - appium plugin install inspector

     - http://127.0.0.1:4723/inspector

       •127.0.0.1 => local

       •4723 => appium 기본 포트

     - Capability Builder

platformName : Android
automationName : UiAutomator2
deviceName : {cmd > adb devices}
appPackage : {cmd > adb shell dumpsys | find "CurrentPage" (패키지)}
appActivity : {adb shell dumpsys | find "CurrentPage" (액티비티)}

 

    - Start Session

Inspector 내 모습

'QA' 카테고리의 다른 글

Charles Proxy  (0) 2025.10.19
API  (0) 2025.10.15
성능 테스트  (0) 2025.10.15
로컬 환경 만들기  (0) 2025.10.14
키바나  (0) 2025.10.13