프로젝트 소개

Airtest는 게임 및 모바일 애플리케이션 자동화를 위해 설계된 크로스 플랫폼 UI 자동화 프레임워크입니다. 플랫폼 독립적인 API를 제공하여 사용자가 테스트 케이스를 한 번 작성하면 Android, iOS, Windows를 포함한 여러 기기와 플랫폼에서 실행할 수 있습니다. 주요 기능은 다음과 같습니다: - **크로스 플랫폼 API**: Airtest는 앱 설치, 시뮬레이션된 입력, 어서션 등을 위한 API를 제공합니다. 이미지 인식 기술을 사용하여 UI 요소를 찾으므로 대상 애플리케이션에 코드를 주입하지 않고도 자동화할 수 있습니다. - **확장성**: Airtest 케이스는 명령줄 인터페이스나 Python API를 사용하여 대규모 디바이스 팜에서 실행할 수 있습니다. 상세 정보와 화면 녹화가 포함된 HTML 리포트는 실패 지점을 빠르게 식별하는 데 도움을 줍니다. NetEase는 Airtest Project를 기반으로 Airlab을 구축했습니다. - **AirtestIDE**: 테스트 케이스를 사용자 친화적인 방식으로 생성하고 실행할 수 있는 즉시 사용 가능한 GUI 도구입니다. 생성, 실행, 리포트의 완전한 자동화 워크플로우를 지원합니다. - **Poco**: 주요 플랫폼과 게임 엔진에서 객체(UI 위젯) 계층 구조에 직접 접근할 수 있는 기능을 추가하는 동반 라이브러리로, Python에서 더 고급 자동화를 가능하게 합니다. 설치는 pip를 통해 간단히 수행할 수 있습니다 (`pip install -U airtest`). macOS와 Linux에서는 ADB 실행 권한을 부여해야 합니다. AirtestIDE GUI 도구는 공식 홈페이지에서 다운로드할 수 있습니다. 이 프레임워크는 CLI에서 `.air` 케이스 파일을 실행하는 것을 지원하며, ADB를 통해 연결된 Android 기기와 Windows 애플리케이션을 포함한 다양한 기기 유형을 대상으로 합니다. 케이스 실행 후 HTML 리포트를 생성할 수 있으며, 이 도구는 Python 모듈로도 사용할 수 있습니다. Airtest는 STF, ATX, pywinauto를 포함한 여러 오픈소스 프로젝트를 기반으로 구축되었습니다.