안녕하세요. 앤디라이언입니다.
이번 포스팅은 AOSP (Android Open Source Platform)에 대한 상용 등급 테스트 도구 중
호환성 테스트에 대해 작성해보고자 합니다.
Android CTS는 무엇인가?
Android CTS는 google에서 제공해 준 무료 상용 등급 테스트 도구 모음으로
AOSP에서 바이너리 또는 소스로 다운로드할 수 있습니다.
https://source.android.com/docs/compatibility/cts?hl=ko
호환성 테스트 제품군 | Android 오픈소스 프로젝트 | Android Open Source Project
이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 호환성 테스트 제품군 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. CTS(호환성 테스트
source.android.com
WSL(Window Subsystem for Linux)을 통해 리눅스 환경 구성
설치 이후 Ubuntu를 실행하면 추가 설치가 완료되어 Windows Terminal Preview에서도 사용할 수 있습니다.
* 주의 - wsl version은 1 이어야 합니다.
(wsl1 은 transport layer에서 작동되고, wsl2는 VM을 통해 작동되어 상이한 부분이 있습니다)
Windows powershell 실행 후 wsl -l -v를 실행하면 ubuntu의 wsl 버전이 표시되는데 2로 되어 있다면 wsl2입니다.
1로 변환을 위해서는 아래 커맨드를 입력합니다.
$ wsl --set-version Ubuntu 1
android-cts는 AOSP에서 make 명령어를 사용하여 android-cts.zip을 생성할 수 있습니다.
make cts -j8
최신 버전의 호환성 테스트 모음을 다운 받고 싶다면,
https://source.android.com/docs/compatibility/cts/downloads?hl=ko
호환성 테스트 모음 다운로드 | Android 오픈소스 프로젝트 | Android Open Source Project
이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 호환성 테스트 모음 다운로드 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android 호환
source.android.com
사이트로 가서 Android 버전에 따른 CTS 최신 버전을 다운로드하면 됩니다.
저의 경우 ARM 계열의 R6가 필요하기 때문에 해당 버전을 다운로드하였습니다.
WSL-CTS를 위한 ADB 환경 구성
- SDK Platform Tools Download via website
r33.0.3 : https://dl.google.com/android/repository/platform-tools_r33.0.3-linux.zip
- SDK Platform Tools Download via wget command
$ cd /home/{USER}/
$ wget https://dl.google.com/android/repository/platform-tools_r33.0.3-linux.zip
$ unzip platform-tools_r33.0.3-linux.zip
다운로드 후 PATH 설정 및 adb 확인
- .bashrc에 PATH 추가
# 맨 하단 아래 PATH 추가
$ vi /home/{USER}/.bashrc
export PATH=$PATH:/home/{USER}/platform-tools/
# bashrc 적용
$ source .bashrc
# adb version 확인
$ adb --version
Android Debug Bridge version 1.0.41
Version 33.0.3-8952118
Installed as /home/andy/TestSuite/platform-tools/adb
WSL-CTS를 위한 AAPT 설치
- aapt 설치
$ sudo apt-get install aapt
- JDK 환경 변수 설정
- Android 11 이상은 OpenJDK11 버전을 설치해야 합니다.
- Android 12에 대한 CTS를 진행할 예정이기 때문에 OpenJDK11 버전을 설치합니다.
$ sudo apt-get install openjdk-11-jdk
설치가 완료되면 정상적으로 설치되었는지 확인하기 위해 버전을 체크해 봅시다.
$ javac -version
javac 11.0.17
만약 로컬로 OpenJDK11 버전을 설치하면 .bashrc에서 PATH를 지정해주어야 합니다.
# JAVA_HOME 및 PATH
$ export JAVA_HOME=/home/TestSuite/jdk-11
$ export PATH=$PATH:$JAVA_HOME/bin
최신 android-cts를 다운로드하면 android-cts폴더 하위에 jdk가 존재합니다.
그래서 만약 android-cts 하위에 존재하는 jdk를 사용하는 경우
별도에 설치 없이 PATH만 설정해 주면 됩니다.
$ export JAVA_HOME=/home/TestSuite/Android12/android-cts/jdk
$ export PATH=$PATH:$JAVA_HOME/bin
# cts 수행을 위한 folder로 이동
$ cd TestSuite/Android12/android-cts/tools/
# run cts
$ ./cts-tradefed
CTS 검증 진행을 확인할 수 있습니다.
'개발 이야기' 카테고리의 다른 글
adb devices no permissions issue (0) | 2023.02.10 |
---|---|
AGI (Android GPU Inspector) (0) | 2023.02.08 |
WSL - su: Authentication failure (0) | 2023.01.30 |
[linux] WSL (Windows Subsystem Linux) (0) | 2023.01.30 |
How to use Android.bp using Soong build system (0) | 2022.02.05 |