Device Farm 팜에서 테스트 실행 생성 - AWS Device Farm

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Device Farm 팜에서 테스트 실행 생성

Device Farm 콘솔을 사용할 수 있습니다.AWS CLI또는 Device 또한 Device Farm 팜의 Jenkins 또는 Gradle 플러그인 등 지원되는 플러그인을 사용할 수도 있습니다. 플러그인에 대한 자세한 내용은 도구 및 플러그인 섹션을 참조하세요. 실행에 대한 자세한 내용은 실행을 참조하십시오.

사전 조건

Device Farm에 프로젝트가 있어야 합니다. AWS Device Farm 팜에서 프로젝트 생성의 지침을 수행한 다음 이 페이지로 돌아옵니다.

테스트 실행 생성 (콘솔)

  1. 에서 Device Farm 콘솔에 로그인합니다.https://console.aws.amazon.com/devicefarm.

  2. 탐색 창에서 [] 를 선택합니다.모바일 디바이스를 선택한 다음 를 선택합니다.프로젝트.

  3. 프로젝트가 이미 있는 경우 테스트를 업로드할 수 있습니다. 정책이 있다면 를 선택합니다.새 프로젝트 선택, 를 입력합니다.프로젝트 이름를 선택한 다음 를 선택합니다.생성.

  4. 프로젝트를 연 후 Create a new run(새 실행 생성)을 선택합니다.

  5. 온 더Application페이지 선택모바일 앱또는웹 앱.

    
        Device Farm 콘솔에서 애플리케이션을 선택합니다.
  6. 애플리케이션 파일을 업로드합니다. 파일을 끌어서 놓거나 최근 업로드를 선택할 수도 있습니다. iOS 앱을 업로드하는 경우 시뮬레이터와 달리 iOS 디바이스를 선택해야 합니다.

  7. (선택 사항) 실행 이름에 이름을 입력합니다. 기본적으로 Device Farm은 앱 파일 이름을 사용합니다.

  8. 다음(Next)을 선택합니다.

  9. 구성 페이지에서 사용 가능한 테스트 제품군 중 하나를 선택합니다.

    참고

    사용 가능한 테스트가 없는 경우 선택합니다.내장 의도 F지 교체지 교환기본 제공된 표준 테스트 제품군을 실행합니다. 선택 항목내장 의도 F지 교체지 교환, 그리고이벤트 개수,이벤트 스로틀, 및Random Seed상자가 나타나면 값을 변경하거나 유지할 수 있습니다.

    사용할 수 있는 테스트 제품군에 대한 자세한 내용은 AWS Device Farm 팜에서 테스트 유형 사용 단원을 참조하십시오.

  10. 선택하지 않은 경우내장 의도 F지 교체지 교환, ST파일 선택를 선택한 후 자체 테스트가 포함된 파일을 찾아 선택합니다.

  11. 테스트 환경에 맞게 선택하십시오.표준 환경에서 테스트 실행또는사용자 지정 환경에서 테스트 실행. 자세한 정보는 테스트 환경을 참조하세요.

  12. 표준 테스트 환경을 사용하는 경우 13단계로 건너뜁니다. 기본 테스트 사양 YAML 파일이 있는 사용자 지정 테스트 환경을 사용하는 경우 13단계로 건너뜁니다.

    1. 사용자 지정 테스트 환경에서 기본 테스트 사양을 편집하려는 경우 편집을 선택하여 기본 YAML 사양을 업데이트합니다.

    2. 테스트 사양을 변경한 경우 다음을 선택하십시오.새 것으로 저장업데이트하기 위해서요.

  13. 동영상 녹화 또는 성능 데이터 캡처 옵션을 구성하려는 경우 고급 구성을 선택합니다.

    1. Select비디오 레코딩 활성화테스트 중에 비디오를 녹화합니다.

    2. Select앱 성능 데이터 캡처 활성화디바이스에서 성능 데이터를 캡처합니다.

    참고

    프라이빗 디바이스가 있는 경우사설 장치 전용 구성또한 표시됩니다.

  14. 다음(Next)을 선택합니다.

  15. Select devices(디바이스 선택) 페이지에서 다음 중 하나를 수행합니다.

    • 테스트를 실행할 기본 제공 디바이스 풀을 선택하려면 디바이스 풀에서 Top Devices(최고 인기 디바이스)를 선택합니다.

    • 테스트를 실행할 고유한 디바이스 풀을 만들려면 Device 풀 생성의 지침을 수행한 다음 이 페이지로 돌아옵니다.

    • 이전에 고유한 디바이스 풀을 만들어 두었다면 디바이스 풀에서 해당 디바이스 풀을 선택합니다.

    자세한 정보는 AWS Device Farm에서 디바이스 지원을 참조하세요.

  16. 다음(Next)을 선택합니다.

  17. Specify device state(디바이스 상태 지정) 페이지에서:

    • 실행 중에 Device Farm에서 사용할 기타 데이터를 제공하려면 다음 옆의추가 데이터 추가, 선택파일 선택를 선택한 후, 해당 데이터가 포함된 .zip 파일을 찾아 선택합니다.

    • 실행 중에 사용할 Device Farm용 추가 앱을 설치하려면 다음 옆의다른 앱 설치, 선택파일 선택을 선택한 후 앱이 들어 있는 .apk 또는 .ipa 파일을 찾아 선택합니다. 설치할 다른 앱에 대해서도 이 절차를 반복합니다. 앱을 업로드한 후 끌어서 놓는 방법으로 설치 순서를 변경할 수 있습니다.

    • 실행 중에 Wi-Fi, Bluetooth, GPS 또는 NFC를 활성화할지 지정하려면 Set radio states(무선 상태 설정) 옆의 해당 확인란을 선택합니다.

    • 실행을 위해 디바이스 위도 및 경도를 미리 설정하려면 Device location(디바이스 위치) 옆에 좌표를 입력합니다.

    • 실행을 위해 디바이스 로캘을 미리 설정하려면디바이스 로케일, 로케일을 선택하세요.

  18. 다음(Next)을 선택합니다.

  19. 온 더실행 검토 및 시작페이지에서 테스트 실행에 대한 실행 제한 시간을 지정할 수 있습니다. 무제한 테스트 슬롯을 사용하는 경우 Run on unmetered slots(과금되지 않는 슬롯에서 실행)가 선택되어 있는지 확인합니다.

  20. 값을 입력하거나 막대 슬라이더를 사용하여 실행 제한 시간을 변경합니다. 자세한 정보는 AWS Device Farm 팜에서 테스트를 실행할 때 실행 제한 시간을 설정합니다.을 참조하세요.

  21. Confirm and start run(실행 확인 및 시작)을 선택합니다.

Device Farm 팜은 디바이스를 사용할 수 있게 되면 일반적으로 몇 분 이내에 이 실행을 시작합니다. 테스트 실행 중에 Device Farm 콘솔에 보류 중인 아이콘이 표시됩니다. 
        Device Farm scheduled a job.
    런 테이블에서 실행 중인 각 장치도 보류 중 아이콘으로 시작한 다음 실행 중 아이콘으로 전환됩니다. 
        Device Farm progress indicator.
    테스트가 시작될 때 각 테스트가 완료합니다. 모든 테스트가 완료되면 실행 옆에 있는 보류 중 아이콘이 테스트 결과 아이콘으로 바뀝니다.

테스트 실행을 중지하려면 단원을 참조하십시오.AWS Device Farm 팜에서 실행 중지.

테스트 실행 만들기 (AWS CLI)

AWS CLI를 사용하여 테스트 실행을 만들 수 있습니다.

1단계: 프로젝트 선택

테스트 실행을 Device Farm 프로젝트와 연결해야 합니다.

  1. Device Farm 프로젝트를 나열하려면 를 실행합니다.list-projects. 프로젝트가 없는 경우 AWS Device Farm 팜에서 프로젝트 생성를 참조하십시오.

    예제:

    aws devicefarm list-projects

    응답에는 Device Farm 프로젝트의 목록이 포함됩니다.

    { "projects": [ { "name": "MyProject", "arn": "arn:aws:devicefarm:us-west-2:123456789101:project:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE", "created": 1503612890.057 } ] }
  2. 테스트 실행과 연결할 프로젝트를 선택한 후 Amazon 리소스 이름(ARN)을 적어 둡니다.

2단계: Device 풀 선택

테스트 실행과 연결할 디바이스 풀을 선택해야 합니다.

  1. 디바이스 풀을 보려면 프로젝트 ARN을 지정하여 list-device-pools를 실행합니다.

    예제:

    aws devicefarm list-device-pools --arn arn:MyProjectARN

    응답에는 다음과 같이 기본 제공된 Device Farm 디바이스 풀이 포함됩니다.Top Devices및 이 프로젝트에 대해 이전에 생성한 모든 디바이스 풀:

    { "devicePools": [ { "rules": [ { "attribute": "ARN", "operator": "IN", "value": "[\"arn:aws:devicefarm:us-west-2::device:example1\",\"arn:aws:devicefarm:us-west-2::device:example2\",\"arn:aws:devicefarm:us-west-2::device:example3\"]" } ], "type": "CURATED", "name": "Top Devices", "arn": "arn:aws:devicefarm:us-west-2::devicepool:example", "description": "Top devices" }, { "rules": [ { "attribute": "PLATFORM", "operator": "EQUALS", "value": "\"ANDROID\"" } ], "type": "PRIVATE", "name": "MyAndroidDevices", "arn": "arn:aws:devicefarm:us-west-2:605403973111:devicepool:example2" } ] }
  2. 디바이스 풀을 선택하고 ARN을 적어 둡니다.

    디바이스 풀을 생성한 후 이 단계로 돌아올 수도 있습니다. 자세한 정보는 디바이스 풀 생성 (AWS CLI)을 참조하세요.

3단계: 애플리케이션 파일 업로드

업로드 요청을 생성하고 Amazon Simple Storage Service (Amazon S3) 의 미리 서명된 업로드 URL을 가져오려면 다음이 필요합니다.

  • 사용자의 프로젝트 ARN

  • 앱 파일의 이름

  • 업로드 유형

자세한 정보는 create-upload을 참조하세요.

  1. 파일을 업로드하려면 create-upload와 함께 –-project-arn, --name--type 파라미터를 실행합니다.

    다음 예에서는 Android 앱의 업로드를 생성합니다.

    aws devicefarm create-upload -–project-arn arn:MyProjectArn -–name MyAndroid.apk -–type ANDROID_APP

    응답에는 앱 업로드 ARN 및 미리 서명된 URL이 포함됩니다.

    { "upload": { "status": "INITIALIZED", "name": "MyAndroid.apk", "created": 1535732625.964, "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL", "type": "ANDROID_APP", "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE" } }
  2. 앱 업로드 ARN 및 미리 서명된 URL을 적어 둡니다.

  3. Amazon S3 미리 서명된 URL을 사용하여 앱 파일을 업로드합니다. 다음 예에서는 curl을 사용하여 Android .apk 파일을 업로드합니다.

    curl -T MyAndroid.apk "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL"

    자세한 내용을 알아보려면 다음 섹션을 참조하세요.미리 서명된 URL을 사용하여 객체 업로드Amazon Simple Storage iceFarm.

  4. 앱 업로드 상태를 확인하려면 get-upload를 실행하고 앱 업로드의 ARN을 지정합니다.

    aws devicefarm get-upload –-arn arn:MyAppUploadARN

    응답의 상태가 SUCCEEDED가 될 때까지 기다린 후 테스트 스크립트 패키지를 업로드합니다.

    { "upload": { "status": "SUCCEEDED", "name": "MyAndroid.apk", "created": 1535732625.964, "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL", "type": "ANDROID_APP", "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE", "metadata": "{"valid": true}" } }

4단계: 테스트 스크립트 패키지 업로드합니다.

다음으로 테스트 스크립트 패키지를 업로드합니다.

  1. 업로드 요청을 생성하고 Amazon S3 미리 서명된 업로드 URL을 가져오려면 를 실행합니다.create-upload와 함께–-project-arn,--name, 및--type매개변수.

    다음 예에서는 Appium Java TestNG 테스트 패키지 업로드를 생성합니다.

    aws devicefarm create-upload –-project-arn arn:MyProjectARN -–name MyTests.zip –-type APPIUM_JAVA_TESTNG_TEST_PACKAGE

    응답에는 테스트 패키지 업로드 ARN 및 미리 서명된 URL이 포함됩니다.

    { "upload": { "status": "INITIALIZED", "name": "MyTests.zip", "created": 1535738627.195, "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL", "type": "APPIUM_JAVA_TESTNG_TEST_PACKAGE", "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE" } }
  2. 테스트 패키지 업로드의 ARN과 미리 서명된 URL을 적어 둡니다.

  3. Amazon S3 미리 서명된 URL을 사용하여 테스트 스크립트 패키지 파일을 업로드합니다. 다음 예에서는 curl을 사용하여 압축된 Appium TestNG 스크립트 파일을 업로드합니다.

    curl -T MyTests.zip "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL"
  4. 테스트 스크립트 패키지 업로드의 상태를 확인하려면 get-upload를 실행하고 1단계의 테스트 패키지 업로드의 ARN을 지정합니다.

    aws devicefarm get-upload –-arn arn:MyTestsUploadARN

    응답의 상태가 SUCCEEDED가 될 때까지 기다린 후 다음 단계(선택 사항)를 진행합니다.

    { "upload": { "status": "SUCCEEDED", "name": "MyTests.zip", "created": 1535738627.195, "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL", "type": "APPIUM_JAVA_TESTNG_TEST_PACKAGE", "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE", "metadata": "{"valid": true}" } }

5단계: (선택 사항) 사용자 지정 테스트 사양 업로드

표준 테스트 환경에서 테스트를 실행하는 경우 이 단계를 건너뜁니다.

Device Farm은 지원되는 각 테스트 유형의 기본 테스트 사양 파일을 유지합니다. 다음으로 기본 테스트 사양을 다운로드하고 이를 사용하여 사용자 지정 테스트 환경에서 테스트를 실행하기 위해 사용자 지정 테스트 사양 업로드를 생성합니다. 자세한 정보는 테스트 환경을 참조하세요.

  1. 기본 테스트 사양의 업로드 ARN을 찾으려면 list-uploads를 실행하고 프로젝트 ARN을 지정합니다.

    aws devicefarm list-uploads --arn arn:MyProjectARN

    응답에 각 기본 테스트 사양의 항목이 포함됩니다.

    { "uploads": [ { { "status": "SUCCEEDED", "name": "Default TestSpec for Android Appium Java TestNG", "created": 1529498177.474, "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL", "type": "APPIUM_JAVA_TESTNG_TEST_SPEC", "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE" } } ] }
  2. 목록에서 기본 테스트 사양을 선택합니다. 업로드 ARN을 적어 둡니다.

  3. 기본 테스트 사양을 다운로드하려면 get-upload를 실행하고 업로드 ARN을 지정합니다.

    예제:

    aws devicefarm get-upload –-arn arn:MyDefaultTestSpecARN

    응답에 기본 테스트 사양을 다운로드할 수 있는 미리 서명된 URL이 포함됩니다.

  4. 다음 예에서는 curl을 사용하여 기본 테스트 사양을 다운로드하고 이를 MyTestSpec.yml로 저장합니다.

    curl "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL" > MyTestSpec.yml
  5. 테스트 요구 사항에 맞게 기본 테스트 사양을 편집한 후, 향후 테스트 실행에서 수정된 테스트 사양을 사용할 수 있습니다. 사용자 지정 테스트 환경에서 기본 테스트 사양을 그대로 사용하려면 이 단계를 건너뜁니다.

  6. 사용자 지정 테스트 사양의 업로드를 생성하려면 테스트 사양 이름, 테스트 사양 유형 및 프로젝트 ARN을 지정하여 create-upload를 실행합니다.

    다음 예에서는 Appium Java TestNG 사용자 지정 테스트 사양의 업로드를 생성합니다.

    aws devicefarm create-upload --name MyTestSpec.yml --type APPIUM_JAVA_TESTNG_TEST_SPEC --project-arn arn:MyProjectARN

    응답에는 테스트 사양 업로드 ARN 및 미리 서명된 URL이 포함됩니다.

    { "upload": { "status": "INITIALIZED", "category": "PRIVATE", "name": "MyTestSpec.yml", "created": 1535751101.221, "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL", "type": "APPIUM_JAVA_TESTNG_TEST_SPEC", "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE" } }
  7. 테스트 사양 업로드의 ARN과 미리 서명된 URL을 적어 둡니다.

  8. Amazon S3 미리 서명된 URL을 사용하여 테스트 사양 파일을 업로드합니다. 이 예를 사용합니다.curl아피움을 업로드하려면 JavaTestNG 테스트 사양:

    curl -T MyTestSpec.yml "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL"
  9. 테스트 사양 업로드의 상태를 확인하려면 get-upload를 실행하고 업로드 ARN을 지정합니다.

    aws devicefarm get-upload –-arn arn:MyTestSpecUploadARN

    응답의 상태가 SUCCEEDED가 될 때까지 기다린 후 테스트 실행을 예약합니다.

    { "upload": { "status": "SUCCEEDED", "name": "MyTestSpec.yml", "created": 1535732625.964, "url": "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL", "type": "APPIUM_JAVA_TESTNG_TEST_SPEC", "arn": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345EXAMPLE", "metadata": "{"valid": true}" } }

    사용자 지정 테스트 사양을 업데이트하려면 테스트 사양의 업로드 ARN을 지정하여 update-upload를 실행합니다. 자세한 정보는 update-upload을 참조하세요.

6단계: 테스트 실행 일정 잡기

AWS CLI로 테스트 실행을 예약하려면 다음을 지정하여 schedule-run을 실행합니다.

  • 1단계의 프로젝트 ARN입니다.

  • 2단계의 디바이스 풀 ARN

  • 3단계의 앱 업로드 ARN

  • 4단계의 테스트 패키지 업로드 ARN

사용자 지정 테스트 환경에서 테스트를 실행하는 경우 5단계의 테스트 사양 ARN도 필요합니다.

표준 테스트 환경에서 실행을 예약하려면

  • 프로젝트 ARN, 디바이스 풀 ARN, 애플리케이션 업로드 ARN 및 테스트 패키지 정보를 지정하여 schedule-run을 실행합니다.

    예제:

    aws devicefarm schedule-run --project-arn arn:MyProjectARN --app-arn arn:MyAppUploadARN --device-pool-arn arn:MyDevicePoolARN --name MyTestRun --test type=APPIUM_JAVA_TESTNG,testPackageArn=arn:MyTestPackageARN

    응답에는 테스트 실행 상태를 확인할 때 사용할 수 있는 실행 ARN이 포함됩니다.

    { "run": { "status": "SCHEDULING", "appUpload": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345appEXAMPLE", "name": "MyTestRun", "radios": { "gps": true, "wifi": true, "nfc": true, "bluetooth": true }, "created": 1535756712.946, "totalJobs": 179, "completedJobs": 0, "platform": "ANDROID_APP", "result": "PENDING", "devicePoolArn": "arn:aws:devicefarm:us-west-2:123456789101:devicepool:5e01a8c7-c861-4c0a-b1d5-12345devicepoolEXAMPLE", "jobTimeoutMinutes": 150, "billingMethod": "METERED", "type": "APPIUM_JAVA_TESTNG", "testSpecArn": "arn:aws:devicefarm:us-west-2:123456789101:upload:5e01a8c7-c861-4c0a-b1d5-12345specEXAMPLE", "arn": "arn:aws:devicefarm:us-west-2:123456789101:run:5e01a8c7-c861-4c0a-b1d5-12345runEXAMPLE", "counters": { "skipped": 0, "warned": 0, "failed": 0, "stopped": 0, "passed": 0, "errored": 0, "total": 0 } } }

    자세한 정보는 schedule-run을 참조하세요.

사용자 지정 테스트 환경에서 실행을 예약하려면

  • 단계는 --test 파라미터의 추가 testSpecArn 속성이 포함된 표준 테스트 환경의 단계와 거의 동일합니다.

    예제:

    aws devicefarm schedule-run --project-arn arn:MyProjectARN --app-arn arn:MyAppUploadARN --device-pool-arn arn:MyDevicePoolARN --name MyTestRun --test testSpecArn=arn:MyTestSpecUploadARN,type=APPIUM_JAVA_TESTNG,testPackageArn=arn:MyTestPackageARN

테스트 실행 상태를 확인하려면

  • get-run 명령을 사용하고 실행 ARN을 지정합니다.

    aws devicefarm get-run --arn arn:aws:devicefarm:us-west-2:111122223333:run:5e01a8c7-c861-4c0a-b1d5-12345runEXAMPLE

자세한 정보는 get-run을 참조하세요. Device Farm 팜과 함께 사용하는 방법에 대한 자세한 내용은AWS CLI, 참조,AWS CLI 참조.

테스트 실행 생성 (API)

단계는 AWS CLI 섹션에서 설명한 단계와 동일합니다. 테스트 실행 만들기 (AWS CLI)을 참조하세요.

ScheduleRun API를 호출하려면 다음 정보가 필요합니다.

참고

사용자 지정 테스트 환경에서 테스트를 실행하는 경우 테스트 사양 업로드 ARN도 필요합니다. 자세한 내용은 5단계: (선택 사항) 사용자 지정 테스트 사양 업로드CreateUpload 섹션을 참조하세요.

Device Farm API 사용에 대한 자세한 내용은 단원을 참조하십시오.Device Farm.

다음 단계

Device Farm 콘솔의 시계 아이콘 
        Device Farm scheduled a job.
    결과 아이콘 변경 (예: 성공) 
        The test succeeded.
    실행이 완료될 때 테스트가 완료되자마자 실행에 대한 보고서가 표시됩니다. 자세한 정보는 AWS Device Farm에서의 보고서을 참조하세요.

보고서를 사용하려면 Device Farm 팜에서 테스트 보고서 다루기의 지침을 따르십시오.