: AWS 콘솔로 Device Farm을 실행하던 중, CLI 등으로 매일(혹은 매주..) 테스트를 자동 실행하도록 예약하면 효과적일 것 같아 해당 방법을 찾아보게 됐습니다. 우선 AWS CLI로 테스트를 실행해보았습니다.
: 공식 페이지 를 참고하여 AWS CLI 설치합니다.
$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
$ sudo installer -pkg AWSCLIV2.pkg -target /
: AWS Console ➔ IAM ➔ 사용자 ➔ DeviceFarm 페이지(링크) 에서 Device Farm 접근 권한이 있는 IAM 액세스 키를 생성합니다.
이때, 비밀 액세스 키는 생성 시에만 확인할 수 있으니 적어둡니다.

: 아래 명령어로 AWS CLI 액세스 키/비밀 액세스 키를 등록합니다.
등록 내역은 ~/.aws/credentials 파일에서 확인할 수 있습니다.
$ aws configure
AWS Access Key ID [None]: {액세스 키}
AWS Secret Access Key [None]: {비밀 액세스 키}
Default region name [None]: us-west-2
Default output format [None]:
AWS CLI로 Device Farm의 테스트를 실행하는 방법은 공식 페이지에 자세하게 나와 있습니다. (공식 페이지)
위의 공식 페이지 안내사항을 따라서 실행 후 마지막 실행 상태를 확인(aws devicefarm get-run --arn ARN)하면 아래와 같이 테스트 결과를 확인할 수 있습니다.
아래 상태는 테스트 150 중 150개를 모두 실행(100개 pass, 50개 fail) 후 완료되기 직전 상태입니다.

: 이렇게 AWS CLI로 테스트를 실행하다 보면, 실행 시작 시간을 예약해서 쉽게 테스트를 실행할 수 는 없을까? 하는 생각이 듭니다. 특히나, 테스트 실행 명령어가 schedule-run 이고, 공식 페이지에도 6단계: 테스트 실행 예약 으로 나와 있어, 실행 시작 시간 예약이 당연히 되지 않을까? 하는 생각이 듭니다.
하지만...
shedule-run): https://docs.aws.amazon.com/cli/latest/reference/devicefarm/schedule-run.html#schedule-runScheduleRun): https://docs.aws.amazon.com/cli/latest/reference/devicefarm/schedule-run.html#schedule-runCron 명령어로 위의 AWS CLI 명령어를 실행하도록 하는 것입니다. (크론 명령어로 배치 등록은 생략하도록 하겠습니다. 관련 사항은 구글 등에서 cron batch 로 검색하면 쉽게 접근할 수 있을 겁니다.)