Android Comms Test Suite(ACTS) 테스트를 실행하는 방법에 대한 가이드입니다.
코드 가져오기
최신 버전의 ACTS는 /platform/tools/test/connectivity/
의 AOSP(Android Open Source Project) Gerrit 저장소에서 찾을 수 있습니다.
코드를 동기화하는 방법에 대한 자세한 내용 은 소스 및 Android 개발자 Codelab 다운로드를 참조하십시오. 코드를 동기화할 때 마스터 브랜치를 동기화하십시오. 태그가 지정된 빌드를 동기화하지 마세요.
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를 설치해야 합니다. 다음 단계에서는 acts_test.zip
의 aosp-master
에서 acts_test.zip 이 있거나 소스에 직접 액세스할 수 있다고 가정합니다.
ACTS를 가져옵니다.
빌드가 게시됩니다. 자세한 내용은 Android 지속적 통합 을 참조하십시오. ci.android.com 의 빌드에서 zip 파일을 가져올 수 있습니다.
test_suites_x86_64
대상을 찾으십시오.acts_test.zip
파일은 Artifacts 탭 아래에 있습니다. 이 예에서는/tmp/acts_test.zip
이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.android.com/) 를 사용하세요. 자세한 내용은 Android Flash Tool 의 설명서를 참조하세요.
SL4A 설치(옵션, 권장)
userdebug
빌드가 있는 장치를 사용하는 경우 SL4A를 사용하여 장치의 시스템 권한 제어를 얻을 수 있는 옵션이 있습니다. 테스트가 장치에서 SL4A를 사용하지 않는 경우 ACTS 구성에서 skip_sl4a
플래그를 설정하여 기능을 비활성화할 수 있습니다.
"AndroidDevice": [{"serial": "standardized serial number reference", "skip_sl4a": true}, ...]
SL4A APK를 얻으려면 Android용 스크립팅 레이어 의 지침을 따르세요.