개발 이야기

Android CTS (Compatibility Test Suite)

ANDYLION 2023. 1. 30. 16:47
728x90
반응형

안녕하세요. 앤디라이언입니다.

이번 포스팅은 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 환경 구성

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 검증 진행을 확인할 수 있습니다.

728x90
반응형
SMALL