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
