이 가이드는 Android 커뮤니케이션 테스트 모음(ACTS) 테스트를 실행하는 방법을 안내합니다.
코드 가져오기
최신 버전의 ACTS는 /platform/tools/test/connectivity/
의 Android 오픈소스 프로젝트(AOSP) Gerrit 저장소에서 확인할 수 있습니다.
코드 동기화 방법에 관한 자세한 내용은 소스 다운로드 및 Android 개발자 Codelab을 참고하세요. 코드를 동기화할 때 main 브랜치를 동기화하세요. 태그가 지정된 빌드는 동기화하지 마세요.
ACTS를 다운로드할 때 전체 Android 저장소를 동기화할 필요는 없습니다. ACTS만 동기화하려면 repo init
명령어를 실행한 후 다음을 실행하세요.
repo sync platform/tools/test/connectivity
ACTS는 <repo>/tools/test/connectivity/acts/
에서 찾을 수 있습니다.
환경 설정
설정에 필요한 종속 항목이 ACTS에 있는지 확인하려면 다음 Python 3 설정 도구를 설치하세요.
sudo apt-get install python3-setuptools
sudo apt-get install python3-pip
sudo apt-get install adb fastboot
sudo pip3 install --upgrade pip setuptools # Needed due to an on-going bug.
sudo apt-get install protobuf-compiler
ACTS 설치
<repo>/tools/test/connectivity/acts/framework
에 있는 setup.py
스크립트는 나머지 종속 항목과 ACTS 자체를 설치합니다.
ACTS에서 또는 ACTS를 사용하여 계속 개발하려면 다음 명령어를 실행하세요.
cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -
테스트만 실행하려면 대신 다음 명령어를 실행합니다.
cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py install
cd -
설치 확인
설정 후 터미널에서 act.py
를 사용할 수 있는지 확인하고 Python에서 ACTS 모듈을 가져옵니다. 예:
act.py -h usage: act.py [-h] -c <PATH> [--test_args Arg1 Arg2 ... ]
python3 >>> from acts.controllers import android_device >>> device_list = android_device.get_all_instances()
설치 없이 실행
사용자는 패키지를 직접 설치하지 않고도 ACTS를 실행할 수 있습니다. <repo>/tools/test/connectivity/acts/framework
에서 가져올 Python 경로를 수정하는 작업만 하면 됩니다. ACTS를 실행하기 전에 setup.py install_deps
를 실행하여 ACTS를 설치하지 않고 ACTS에 필요한 모든 종속 항목을 설치합니다. 기존 버전의 ACTS가 컴퓨터에 있으면 sudo setup.py uninstall
을 실행합니다.
ACTS를 실행하려면 다음 명령어 중 하나를 사용하세요.
cd <repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
export PYTHONPATH=<repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
ACTS는 -c
및 -tc
플래그를 요청하는 메시지를 출력합니다. 자세한 내용은 ACTS 테스트 구성을 참고하세요.
가상 환경에서 ACTS 설정
다른 ACTS 설치와 내 설치를 분리하려면 가상 환경에서 ACTS를 설치해야 합니다. 다음 단계에서는 ci.android.com에서 확인 가능한 aosp-main
의 acts_test.zip
이 있거나 소스에 직접 액세스할 수 있다고 가정합니다.
ACTS를 가져옵니다.
빌드가 게시됩니다. 자세한 내용은 Android 지속적 통합을 참고하세요. ci.android.com의 빌드에서 ZIP 파일을 가져올 수 있습니다.
test_suites_x86_64
타겟을 찾습니다.acts_test.zip
파일은 Artifacts 탭 아래에 있습니다. 이 예에서는acts_test.zip
이/tmp/acts_test.zip
에 다운로드되었다고 가정합니다.소스 코드 액세스 권한이 있으면 대신 사용해도 됩니다.
컴퓨터에
virtualenv
를 설치합니다.아직 설치하지 않았다면 다음을 사용하여
virtualenv
를 설치할 수 있습니다.python3 -m pip install -U --user virtualenv
가상 환경을 만들고 활성화합니다(이 예에서는
/tmp/my_virtualenv
). 이렇게 하면 새 패키지가virtualenv
디렉터리에 설치됩니다.python3 -m virtualenv /tmp/my_virtualenv
source /tmp/my_virtualenv/bin/activate
ACTS를 설치합니다. 다음 명령어를 실행합니다.
unzip /tmp/acts_test.zip -d /tmp/my_virtualenv/acts
cd /tmp/my_virtualenv/acts/tools/test/connectivity/acts/framework/
python3 setup.py install
코드에 직접 액세스할 수 있다면 압축 풀기를 건너뛰어도 됩니다.
cd /path/to/acts/framework
python3 setup.py install
어디서나 ACTS를 실행합니다.
act.py -c <config> ...
테스트 실행이 끝나면 가상 환경을 종료합니다.
deactivate
Android 기기 플래싱(선택사항)
기기의 시스템 권한 컨트롤을 가져오려면 userdebug
빌드를 사용하여 기기를 플래시하세요.
기기를 플래시하려면 Android Flash Tool(flash.android.com/)을 사용합니다. 자세한 내용은 Android Flash Tool의 문서를 참고하세요.
SL4A 설치(선택사항, 권장)
userdebug
빌드가 있는 기기를 사용하고 있다면 SL4A를 사용하여 기기의 시스템 권한 컨트롤을 가져올 수 있습니다. 기기에서 SL4A를 사용하지 않는 테스트의 경우 ACTS 구성에서 skip_sl4a
플래그를 설정하여 이 기능을 사용 중지하면 됩니다.
"AndroidDevice": [{"serial": "standardized serial number reference", "skip_sl4a": true}, ...]
SL4A APK를 가져오려면 Android용 스크립팅 레이어의 안내를 따르세요.