Android 테스트 프로세스 자동화

Android Debug Bridge(adb) 유틸리티와 명령행 도구(예: curl)의 명령행 인터페이스를 사용하여 Android 앱의 테스트 프로세스를 자동화할 수 있습니다. 그런 다음 명령행의 명령문을 스크립트와 일괄처리 파일로 결합할 수 있습니다.

시작하기 전에

이 태스크 정보

자동화 프로세스에는 다음 단계가 포함됩니다.

프로시저

  1. AUT의 최신 릴리스를 인스트루먼테이션하십시오.

    모바일 디바이스나 에뮬레이터에서 테스트 워크벤치로 애플리케이션을 업로드하거나 테스트 워크벤치에서 목록에 애플리케이션 추가 단추를 클릭하여 Android 앱을 수동으로 인스트루먼테이션할 수 있습니다. 프로세스를 자동화하려면 curl 등의 도구를 사용하십시오.

    1. Rational Test Workbench Eclipse Client를 시작하십시오.
    2. 테스트 워크벤치에서 워크벤치 URL 표시 아이콘워크벤치 URL을 클릭한 후 워크벤치 URL을 기록해 두십시오. 다음 단계를 수행하려면 워크벤치 URL의 IP 주소와 포트가 필요합니다.
    3. 다음 명령행을 실행하여 AUT를 인스트루먼테이션하십시오.
      curl -F "appfile=@MyApp.apk" 
      -F "appdescription=My App Description" 
      http://Workbench-URL:port/moeb/service/com.ibm.rational.test.lt.core.moeb.services.buildchain.IBuildChainService/?action=upload

      예를 들어, 다음과 같습니다.

      curl -F "appfile=@MyExpenses.apk" 
      -F "appdescription=Expense report app" 
      http://192.0.2.24:7878/moeb/service/com.ibm.rational.test.lt.core.moeb.services.buildchain.IBuildChainService/?action=upload

    이 단계를 수행하면 다음과 같은 세 개의 새 .apk 파일이 생깁니다.

    • R-original apk name.apk - 재생 지원 애플리케이션
    • T-original apk name.apk - 애플리케이션의 테스트 엔진
    • I-original apk name.apk - 기록 지원 애플리케이션

    .apk 파일, 인스트루먼테이션 및 Android 빌드 프로세스에 대한 세부사항은 Android 테스트 개요의 내용을 참조하십시오.

  2. adb를 사용하여 Android 디바이스나 에뮬레이터에 AUT의 최신 릴리스를 설치하십시오. 재생 지원 .apk 파일과 테스트 엔진 .apk 파일이 모두 설치되어야 합니다. 일반적으로 adb 유틸리티는 Android-SDK-install-location\sdk\platform-tools에 설치됩니다.
    1. 재생 지원 .apk 파일과 테스트 엔진 .apk 파일은 Eclipse 작업공간의 다음 위치에서 찾으십시오.
      your-workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds/AUT-uid/R-original-apk-name.apk

      여기서 AUT-uid는 builds 폴더 중에 마지막으로 수정된 서브폴더의 폴더 이름입니다. 일반적으로 AUT-uid는 길이가 긴 16진수입니다.

      예:

      C:\workspaces\rtw86\.metadata\.plugins\com.ibm.rational.test.lt.models.behavior.moeb\builds\b01714617a0a34788898e05c9696e0bf\R-expenses.apk

      동일한 위치에 테스트 엔진 앱이 있습니다. R 접두부를 T로 바꾸십시오.

    2. 명령행에서 다음 명령을 실행하십시오.
      adb install -r Workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds//AUT-uid/R-AUT-name.apk
      adb install -r Workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds//AUT-uid/T-AUT-name.apk

      여러 디바이스 또는 에뮬레이터에 AUT를 설치하려면 -s(일련 번호) 옵션을 사용하십시오. 예를 들어 다음과 같습니다.

      adb install -s emulator-5556 -r 
      C:\workspaces\rtw86\.metadata\.plugins\com.ibm.rational.test.lt.models.behavior.moeb\builds\b01714617a0a34788898e05c9696e0bf\R-expenses.apk
      adb install -s emulator-5558 -r 
      C:\workspaces\rtw86\.metadata\.plugins\com.ibm.rational.test.lt.models.behavior.moeb\builds\b01714617a0a34788898e05c9696e0bf\T-expenses.apk

      세부사항은 특정 에뮬레이터 또는 디바이스로 명령 전달을 참조하십시오.

  3. 모바일 테스트 클라이언트를 설치하고 수동 모드로 시작하십시오. 수동 모드에서는 테스트 워크벤치의 스크립트 또는 배치 파일을 사용하여 테스트 실행을 제어할 수 있습니다.

    다음 adb 명령을 실행하여 기존 모바일 테스트 클라이언트 버전을 설치 제거하고 새 버전의 클라이언트를 다시 설치한 다음 클라이언트를 수동 모드로 설정하십시오.

    adb uninstall com.ibm.rational.test.mobile.android.client.ui
    adb install "Eclipse client path/com.ibm.rational.test.mobile.android.client.ui-release.apk"
    adb shell am start 
    -n com.ibm.rational.test.mobile.android.client.ui/.MainActivity -e workbench_url "Workbench-Url" --ez passive_mode “true”

    예를 들어, 다음과 같습니다.

    adb uninstall com.ibm.rational.test.mobile.android.client.ui
    adb install "C:\Program Files\IBM\IBMIMShared\com.ibm.rational.test.mobile.android.client.ui-release.apk"
    adb shell am start 
    -n com.ibm.rational.test.mobile.android.client.ui/.MainActivity -e workbench_url "9.44.55.666:7878" --ez passive_mode “true”
  4. 명령행 모드로 테스트를 실행하십시오.

    이제 테스트를 실행할 수 있습니다. 명령행 모드에서 테스트 또는 스케줄을 실행하는 데 대한 세부사항은 명령행에서 테스트 또는 스케줄 실행을 참조하십시오.

    참고: Mac OS X의 명령행에서 테스트를 실행할 수 없습니다.

    기본적으로 테스트 워크벤치에서는 연결된 디바이스 중 테스트 실행 요구사항(Android OS 및 Android API)에 최적으로 맞는 첫 번째 디바이스를 선택합니다. 하나 이상의 특정 디바이스에서 테스트를 실행하려면 adb -s device ID 옵션을 사용하십시오. 디바이스 ID를 찾으려면 테스트 워크벤치에서 모바일 디바이스 편집기를 열고 디바이스를 선택한 다음 세부 특성에서 ID를 찾으십시오.

    변수를 사용하여 특정 디바이스를 선택할 수도 있습니다. 세부사항은 선택한 모바일 디바이스로 테스트를 실행하기 위해 변수 정의의 내용을 참조하십시오.

    모든 테스트 스크립트가 특정 버전의 AUT에 링크됩니다. 새 버전의 AUT를 업로드하는 경우 언제나 최신 버전의 AUT에서 테스트를 실행해야 합니다. 세부사항은 테스트에서 변수를 정의하여 애플리케이션의 최신 버전 실행의 내용을 참조하십시오.


피드백