

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

# 표준 환경에서 사용자 지정 테스트 환경으로 테스트 마이그레이션
<a name="custom-test-environment-migration"></a>

AWS Device Farm에서 표준 테스트 실행 모드에서 사용자 지정 실행 모드로 전환할 수 있습니다. 마이그레이션에는 주로 두 가지 다른 형태의 실행이 포함됩니다.

1. **표준 모드**: 이 테스트 실행 모드는 주로 고객에게 세분화된 보고 및 완전히 관리되는 환경을 제공하기 위해 구축되었습니다.

1. **사용자 지정 모드**: 이 테스트 실행 모드는 더 빠른 테스트 실행, 리프트 앤 시프트 기능, 로컬 환경과 동등한 수준 달성, 라이브 비디오 스트리밍이 필요한 다양한 사용 사례에 맞게 구축되었습니다.

Device Farm의 표준 및 사용자 지정 모드에 대한 자세한 내용은 [AWS Device Farm의 테스트 환경](test-environments.md) 및 [AWS Device Farm의 사용자 지정 테스트 환경](custom-test-environments.md) 섹션을 참조하세요.

## 마이그레이션 시 고려 사항
<a name="considerations-when-migrating"></a>

이 섹션에는 사용자 지정 모드로 마이그레이션할 때 고려해야 할 몇 가지 주요 사용 사례가 나열되어 있습니다.

1. **속도**: 표준 실행 모드에서 Device Farm은 특정 프레임워크의 패키징 지침을 사용하여 패키징하고 업로드한 테스트의 메타데이터를 파싱합니다. 파싱은 패키지의 테스트 수를 감지합니다. 이후 Device Farm은 각 테스트를 개별적으로 실행하고 각 테스트에 대한 로그, 비디오 및 기타 결과 아티팩트를 개별적으로 표시합니다. 하지만 서비스 측에서 테스트 및 결과 아티팩트를 사전 및 사후 처리해야 하므로 전체 엔드 투 엔드 테스트 실행 시간이 꾸준히 늘어납니다.

   반대로 사용자 지정 실행 모드는 테스트 패키지를 파싱하지 않으므로 테스트 또는 결과 아티팩트에 대한 사전 처리가 필요 없고 사후 처리가 최소화됩니다. 따라서 엔드 투 엔드 총 실행 시간이 로컬 설정과 비슷해집니다. 테스트는 로컬 시스템에서 실행할 때와 동일한 형식으로 실행됩니다. 테스트 결과는 로컬에서 얻은 결과와 동일하며 작업 실행 종료 시 다운로드할 수 있습니다.

1. **사용자 지정 또는 유연성**: 표준 실행 모드는 테스트 패키지를 파싱하여 테스트 수를 감지한 다음 각 테스트를 개별적으로 실행합니다. 단, 테스트가 지정한 순서대로 실행된다는 보장은 없습니다. 따라서 특정 실행 시퀀스가 필요한 테스트는 예상대로 작동하지 않을 수 있습니다. 또한 호스트 컴퓨터 환경을 사용자 지정하거나 특정 방식으로 테스트를 실행하는 데 필요할 수 있는 구성 파일을 전달할 방법도 없습니다.

   반면 사용자 지정 모드에서는 추가 소프트웨어 설치, 테스트에 필터 전달, 구성 파일 전달, 테스트 실행 설정 제어 등의 기능을 비롯한 호스트 컴퓨터 환경을 구성할 수 있습니다. 이 작업은 YAML 파일(testspec 파일이라고도 함)을 통해 수행되며, 이 파일에 쉘 명령을 추가하여 수정할 수 있습니다. 이 YAML 파일은 테스트 호스트 시스템에서 실행되는 쉘 스크립트로 변환됩니다. 여러 YAML 파일을 저장하고 실행을 예약할 때 요구 사항에 따라 동적으로 하나를 선택할 수 있습니다.

1. **라이브 비디오 및 로깅**: 표준 실행 모드와 사용자 지정 실행 모드 모두 테스트에 필요한 비디오와 로그를 제공합니다. 하지만 표준 모드에서는 테스트가 완료된 후에만 테스트의 비디오 및 사전 정의된 로그를 얻을 수 있습니다.

   반면 사용자 지정 모드에서는 비디오의 실시간 스트림과 테스트의 클라이언트 측 로그를 제공합니다. 또한 테스트 종료 시 비디오 및 기타 아티팩트를 다운로드할 수 있습니다.

**작은 정보**  
사용 사례에 위의 요인 중 하나 이상이 포함되는 경우 사용자 지정 실행 모드로 전환하는 것이 좋습니다.

## 마이그레이션 단계
<a name="migrating-to-custom"></a>

표준 모드에서 사용자 지정 모드로 마이그레이션하려면 다음을 수행합니다.

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/devicefarm/](https://console.aws.amazon.com/devicefarm/) Device Farm 콘솔을 엽니다.

1. 프로젝트를 선택한 다음 새 자동화 실행을 시작하세요.

1. 앱을 업로드(또는 `web app`을 선택)하고 테스트 프레임워크 유형을 선정하여 테스트 패키지를 업로드한 다음, `Choose your execution environment` 파라미터 아래에서 옵션을 `Run your test in a custom environment`로 선택합니다.

1. 기본적으로 Device Farm의 예제 테스트 사양 파일이 표시되어 보고 편집할 수 있습니다. 이 예제 파일은 [사용자 지정 환경 모드](https://docs.aws.amazon.com/devicefarm/latest/developerguide/custom-test-environments.html)에서 테스트를 시험해 보기 위한 출발점으로 사용할 수 있습니다. 그런 다음 콘솔에서 테스트가 제대로 작동하는지 확인한 후에는 Device Farm과의 API, CLI 및 파이프라인 통합을 변경하여 테스트 실행을 예약할 때 이 테스트 사양 파일을 파라미터로 사용할 수 있습니다. 테스트 사양 파일을 실행용 파라미터로 추가하는 방법에 대한 자세한 내용은 [API 가이드](https://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ScheduleRun.html)의 `ScheduleRun` API용 `testSpecArn` 파라미터 섹션을 참조하세요.

## Appium 프레임워크
<a name="custom-test-environment-migration-appium"></a>

사용자 지정 테스트 환경에서 Device Farm은 Appium 프레임워크 테스트에 Appium 기능을 삽입하거나 재정의하지 않습니다. 테스트 사양 YAML 파일 또는 테스트 코드에서 테스트의 Appium 기능을 지정해야 합니다.

## Android 계측
<a name="custom-test-environment-migration-instrumentation"></a>

Android 계측 테스트를 사용자 지정 테스트 환경으로 이동할 때 변경이 필요하지 않습니다.

## iOS XCUITest
<a name="custom-test-environment-migration-xcuitest"></a>

iOS XCUITest 테스트를 사용자 지정 테스트 환경으로 이동할 때 변경이 필요하지 않습니다.