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

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

Device Farm에서 테스트 실행 생성

Device Farm 콘솔 또는 Device API Farm을 사용하여 테스트 실행을 생성할 수 있습니다. AWS CLI또한 Device Farm용 Jenkins 또는 Gradle 플러그인 등 지원되는 플러그인을 사용할 수도 있습니다. 플러그인에 대한 자세한 내용은 도구 및 플러그인 단원을 참조하세요. 실행에 대한 자세한 내용은 실행 단원을 참조하세요.

사전 조건

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

테스트 실행 생성(콘솔)

  1. https://console.aws.amazon.com/devicefarm에서 Device Farm 콘솔에 로그인하세요.

  2. 탐색 창에서 모바일 디바이스 테스트를 선택하고 프로젝트를 선택하세요.

  3. 프로젝트가 이미 있는 경우 해당 프로젝트에 테스트를 업로드할 수 있습니다. 그렇지 않다면 새 프로젝트를 선택하여 프로젝트의 이름을 입력한 뒤 생성을 선택하세요.

  4. 프로젝트를 열고 새 실행 생성을 선택하세요.

  5. 애플리케이션 선택 페이지에서 모바일 앱 또는 웹 앱을 선택하세요.

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

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

  8. 다음을 선택하세요.

  9. 구성 페이지에서 사용 가능한 테스트 스위트 중 하나를 선택하세요.

    참고

    사용 가능한 테스트가 없는 경우 내장: fuzz를 선택하여 기본 제공된 표준 테스트 스위트를 실행합니다. 내장: fuzz를 선택하고 이벤트 개수, 이벤트 스로틀, Radomizer 시드 상자가 표시되면 값을 변경하거나 유지할 수 있습니다.

    사용할 수 있는 테스트 스위트에 대한 자세한 내용은 AWSDevice Farm에서 테스트 유형 사용하기 단원을 참조하세요.

  10. 내장: fuzz를 선택하지 않은 경우 파일 선택을 선택한 후 자체 테스트가 포함된 파일을 찾아 선택하세요.

  11. 실행 환경에서 표준 환경에서 테스트 실행 또는 테스트 환경 사용자 지정을 선택하세요. 자세한 내용은 테스트 환경 단원을 참조하세요.

  12. 표준 테스트 환경을 사용하는 경우 13단계로 건너뛰세요. 기본 테스트 사양 YAML 파일이 있는 사용자 지정 테스트 환경을 사용하는 경우 13단계로 건너뛰십시오.

    1. 사용자 지정 테스트 환경에서 기본 테스트 사양을 편집하려면 편집을 선택하여 기본 사양을 업데이트하십시오. YAML

    2. 테스트 사양을 변경한 경우 새로 저장으로 테스트 사양을 업데이트하세요.

  13. 동영상 녹화 또는 성능 데이터 캡처 옵션을 구성하려면 고급 구성을 선택하세요.

    1. 테스트 실행 중에 동영상 녹화하려면 동영상 녹화 활성화를 선택하세요.

    2. 디바이스에서 성능 데이터 캡처하려면 앱 성능 데이터 캡처 활성화를 선택하세요.

    참고

    프라이빗 디바이스가 있는 경우 프라이빗 디바이스 구성도 표시됩니다.

  14. 다음을 선택하세요.

  15. 디바이스 선택 페이지에서 다음 중 하나를 수행하세요.

    • 테스트를 실행할 기본 제공 디바이스 풀을 선택하려면 디바이스 풀에서 최고 인기 디바이스를 선택하세요.

    • 테스트를 실행할 고유한 디바이스 풀을 만들려면 디바이스 풀 생성의 지침을 수행한 후 현재 페이지로 돌아오세요.

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

    자세한 내용은 Device Farm에서의 AWS 장치 지원 단원을 참조하세요.

  16. 다음을 선택하세요.

  17. 디바이스 상태 지정 페이지에서 다음을 수행하세요.

    • 실행 중에 Device Farm이 사용할 다른 데이터를 입력하려면 데이터 추가 옆의 파일 선택 클릭 후, 해당 데이터가 포함된 .zip 파일을 찾아 선택하세요.

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

    • 실행 중에 Wi-FiGPS, Bluetooth 또는 NFC 활성화 여부를 지정하려면 무선 상태 설정 옆의 해당 상자를 선택합니다.

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

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

  18. 다음을 선택하세요.

  19. 검토 및 실행 시작 페이지에서 테스트 실행 시간 제한을 지정할 수 있습니다. 무제한 테스트 슬롯을 사용하는 경우 과금되지 않는 슬롯에서 실행이 선택되어 있는지 확인하세요.

  20. 값을 입력하거나 막대 슬라이더를 사용하여 실행 시간 제한을 변경하세요. 자세한 내용은 AWSDevice Farm에서 테스트 실행의 실행 제한 시간을 설정합니다. 단원을 참조하세요.

  21. 확인 및 실행 시작을 선택하세요.

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

테스트 실행을 중지해야 하는 경우 AWSDevice 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단계: 디바이스 풀 선택

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

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

    예제:

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

    응답은 Top Devices 및 해당 프로젝트에 대해 기존 생성한 모든 디바이스 풀 등 내장 Device Farm 디바이스 풀을 포함합니다.

    { "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 서비스 (Amazon S3) 의 사전 서명된 URL 업로드를 받으려면 다음이 필요합니다.

  • 귀하의 프로젝트ARN.

  • 앱 파일의 이름

  • 업로드 유형

자세한 내용은 create-upload 단원을 참조하십시오.

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

    다음 예시에서는 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. 미리 URL 서명된 Amazon S3를 사용하여 앱 파일을 업로드합니다. 다음 예에서는 curl을 사용하여 Android .apk 파일을 업로드합니다.

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

    자세한 내용은 Amazon 심플 스토리지 서비스 사용 설명서의 URLs presign을 사용하여 객체 업로드를 참조하십시오.

  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 –-project-arn--name, 및 --type 파라미터를 create-upload 사용하여 실행하십시오.

    다음 예에서는 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. 미리 URL 서명된 Amazon S3를 사용하여 테스트 스크립트 패키지 파일을 업로드합니다. 다음 예에서는 curl을 사용하여 압축된 Appium TestNG 스크립트 파일을 업로드합니다.

    curl -T MyTests.zip "https://prod-us-west-2-uploads.s3-us-west-2.amazonaws.com/ExampleURL"
  4. 테스트 스크립트 패키지 업로드 상태를 확인하려면 1단계의 테스트 패키지 업로드를 get-upload 실행하고 지정하십시오. 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. 사용자 지정 테스트 사양의 업로드를 생성하려면 테스트 사양 이름create-upload, 테스트 사양 유형, 프로젝트를 지정하여 실행하십시오. ARN

    다음 예에서는 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. 미리 URL 서명된 Amazon S3를 사용하여 테스트 사양 파일을 업로드합니다. 이 예제는 Appium curl JavaTest NG 테스트 사양을 업로드하는 데 사용됩니다.

    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 CLIschedule-run 예약하려면 다음을 실행합니다.

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

표준 테스트 환경에서 실행을 예약
  • 프로젝트schedule-run, 기기 풀ARN, 애플리케이션 업로드 ARNARN, 테스트 패키지 정보를 지정하여 실행합니다.

    예제:

    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)을 참조하세요.

다음을 호출하려면 이 정보가 필요합니다 ScheduleRunAPI.

참고

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

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

다음 단계

Device Farm 콘솔에서 실행이 완료되면 시계 아이콘 Device Farm scheduled a job. 이 성공 The test succeeded. 등의 결과 아이콘으로 바뀝니다. 테스트가 완료되자마자 실행에 대한 보고서가 표시됩니다. 자세한 내용은 AWSDevice Farm의 보고서 단원을 참조하세요.

보고서를 사용하려면 Device Farm에서 테스트 보고서 작업의 지침을 따르세요.