Category: AWS Device Farm


AWS Device Farm 업데이트 – 원격 장치 접속을 통한 테스팅 지원

on | in AWS Device Farm |

지난해 AWS Device Farm 을 처음 소개할 때는 어떻게 실제 장치에서 모바일 앱을 테스트 하는 방법에 대해 이야기했습니다. 그 때 설명했던대로, AWS Device Farm에서는 Project를 만들고 Application을 지정하여 Test 셋을 설정하면, 별도의 단말기를 보유하지 않아도 클라우드 상에서 다양한 iOS와 Android 단말에 대한 테스트를 실행 할 수 있습니다.

신규 원격 장치 접속 지원 기능
클라우드에 위치한 원격 장치 (스마트 폰 및 태블릿)에 접근하여,  대화형 테스트를 할 수 있는 새로운 기능을 출시합니다. 원하는 장치에서 새로운 세션을 시작하여 장치를 사용할 때까지 (보통 1 ~ 2 분 정도) 기다린 후, AWS 관리 콘솔을 통해 각 장치와 상호 작업을 할 수 있습니다.

마치 그 장치가 책상 위에있는 것처럼, 혹은 손 안에있는 것처럼 실시간으로 웹 브라우저 너머로 제스처 기능 및 대화식으로 작업 할 수 있습니다. 원하는 응용 프로그램을 설치하고 실행 할 수도 있습니다!

아래는 간단한 데모입니다. [Start a new session]을 클릭하여 시작합니다.

원하는 장치 유형, OS 버전을 검색  및 선택하고 세션의 이름을 입력합니다. [Confirm and start session]을 클릭하여 진행합니다.

그리고 나서 사용 가능할 때까지 기다립니다. (약 30 초 정도)

장치를 사용할 수 있게되면 콘솔을 통해 스크린을 볼 수 있습니다.

마우스를 사용하여 Kindle Fire를 대화식으로 작업 할 수 있습니다. 언어를 라틴 아메리카 스페인어로 설정하면, 응용 프로그램이 예상대로 작동하지 않을지도 모릅니다. 몇 번의 클릭으로 Kindle Fire의 설정을 변경할 수 있습니다.

Upload를 클릭하여 APK 파일을 선택하면 Kindle Fire 내 응용 프로그램을 설치할 수 있습니다. 세션은 최대 60 분까지 실행할 수 있습니다. 그 이후에는 자동으로 정지합니다.

정식 출시
많은 Android 스마트 폰과 태블릿을 선택할 수 있으며, 지금 바로 베타로 사용할 수 있습니다. 올해는 iOS 장치 추가를 예정하고 있으며, 또한 장치의 설정과 가상 위치 관리를 제공 할 예정입니다.

AWS Device Farm은 처음 250 device minutes 프레임을 무료로 사용할 수 있습니다. 프리티어 사용량을 소진 한 후, device minute (1 장치 x 1 분)마다 0.17 달러가 부과됩니다. 또는 한달에 250 달러에서 1 슬롯 (슬롯은 동시 실행 단위입니다. 슬롯 내이면 테스트마다 기종을 변경할 수 있습니다)를 무제한으로 사용할 수 있습니다.

Jeff;

이 글은 AWS Device Farm Update – Remote Access to Devices for Interactive Testing의 한국어 번역입니다.

AWS Device Farm 업데이트 – 모바일 웹 앱 테스트하기

on | in AWS Device Farm |

여러분이 모바일 앱을 개발하는 경우, 주로 두 가지 구현 방법이 있습니다. 네이티브 앱으로 만들거나 하이브리드앱으로 제작하는 것입니다. 또 한가지는 기기의 웹 브라우저 안에서 동작하는 모바일 웹앱을 구현하는 방법도 있습니다.

AWS는 지난 7월에 iOS와 안드로이드 기기에서 자동화된 네이티브 및 하이브리드앱 테스팅을 위한 AWS Device Farm을 출시한 바 있습니다. (자세히 보기).

오늘 새롭게 iOS와 안드로이드 모바일 웹 브라우저 기반의 테스트 기능도 추가합니다. 많은 고객들이 이 기능을 요청하였고, 정식 출시하게 되어 기쁘게 생각합니다. 이제 여러분은 Appium Java JUnit, Appium Java TestNG 프레임웍 등을 기반으로 다양한 테스트를 추가할 수 있습니다.

모바일 웹앱 테스트하기
손쉽게 테스트를 시작해 볼 수 있습니다. amazon.com에서 “Kindle”을 검색해 보는 시나리오를 Device Farm 콘솔에서 신규 프로젝트 생성(Test Amazon Site)을 하고, Web App Test #2라는 테스트를 만들면 됩니다.

테스트 형식을 정하고 (TestNG) 테스트를 업로드하면 됩니다.

파일 (chrome-with-screenshot.zip)에는 컴파일된 테스트와 의존성 정보(JAR 파일들)이 들어 있습니다.

다음으로 디바이스를 선택 한 후, 안드로이드 디바이스로 “pool”을 구성합니다.

실행한 후 잠시 기다립니다.

결과를 검사해 보면 스크린샷을 포함해서 다양한 결과를 볼 수 있습니다.

정식 출시
본 기능은 오늘부터 사용해 볼 수 있으며, 더 자세한 것은 Device Farm 문서를 참고하시기 바랍니다.

Jeff;

이 글은 AWS Device Farm Update – Test Web Apps on Mobile Devices의 한국어 번역입니다.

AWS Device Farm 안드로이드 앱을 위한 내장 탐색기 공개

on | in AWS Device Farm |

오늘부터 AWS Cloud에서 안드로이드 앱이 실제 기기에서 어떻게 구동 되는지 테스트 케이스를 만들지 않고도 확인할 수 있습니다. 바로 AWS Device Farm 내장 탐색기를 통해 일반 사용자가 보는 각 콘트롤과 상호 작용 및 분석 및 앱을 탐색합니다. 앱 탐색기는 스크린샷을 만들고, 앱 탐색하는 동안 성능 데이터 및 로그도 저장합니다.이들 결과는 디바이스 팜 보고 기능이나 API를 통해 확인 가능합니다.

앱 탐색기는 네이티브 및 웹 콘트롤 모두 지원하고, 버튼을 누르거나 텍스트 입력 항목에 글을 넣거나 메뉴를 열거나 하는 동작도 됩니다. 이런 동작 중에 나오는 스크린샷과 로그를 저장합니다. 또한, 앱이 로그인이 필요하다면 로그인 양식에서 입력할 인증 정보를 제공해 줄 수 있습니다.

시작하기

1. 먼저 AWS Device Farm 콘솔에 로그인합니다. 처음 사용하시더라도 한번 테스트에 250분까지는 무료로 사용 가능합니다.

2. 콘솔에서 “Create a new run”을 눌러 다음 단계에 간단한 프로젝트 명을 입력합니다.

3. 여러분이 만드는 Android app (.apk) 파일을 업로드 합니다.

4. Configure Test 단계에서 테스트 종류 중 “Built-in: Explorer”을 선택합니다. 만약 로그인 정보가 필요하다면 usernamepassword 항목에 미리 테스트 계정의 인증 정보를 입력합니다.

5. “Next”을 계속 누른 후, Review and Start Run 단계에서 “Confirm and start run.”을 눌러 테스트를 진행합니다.

결과 분석하기

내장 탐색기를 통한 디바이스 테스트가 끝나면, 그 결과는 리포트 기능으로 전달됩니다. 보고 요약에서 “Screenshots” 탭을 누르면 모든 스크린샷을 볼 수 있습니다. 좀 더 자세한 정보를 “Devices” 항목에서 각 디바이스 별로 클릭하면 보실 수 있습니다.

View logs and screenshots for a specific device by selecting it from the AWS Device Farm report summary view

요약 보기에서 각 디바이스 선택 시 나오는 로그, 스크린샷, 성능 자료

각 디바이스 별로 로그, 성능 데이터 및 스크린샷으로 특정 디바이스의 데이터를 분석해 볼 수 있습니다.

The Android app explorer captures logs for each devices

특정 디바이스의 앱 탐색기로 얻은 로그 보기

The app explorer captures screenshots for each interaction on a device

특정 디바이스의 앱 탐색기로 본 스크린샷

맺으면서

앱 탐색기는 별도의 테스트 스크립트 없이도 안드로이드앱의 사용자 행동을 테스트해 볼 수 있어서 개발 중에 좀 더 빠르게 자동 테스트를 해볼 수 있습니다. 내장 앱 탐색기를 콘솔과 SDK을 통해 사용해 볼 수 있으며 Jenkins의 지속적 통합 환경에서도 테스트 가능합니다. 더 자세한 것은 Device Farm Jenkins 플러그인을 이용해 보시기 바랍니다.

앱 탐색기에 여러분이 직접 만든 테스트를 추가할 수 있습니다. 이를 통해 앱에서 특정 기능을 실행해 볼 수 있고, 원하는 정확한 스크린샷을 얻을 수 있습니다. 이러한 맞춤형 테스트 역시 앱 탐색기에 가능하며, 앱의 비지니스 로직과 관계 없이 앱을 탐색할 수 있습니다.

또한, Espresso, Calabash 및 Appium 같은 테스트 프레임웍을 이용할 수 있고 자세한 것은 개발자 문서를 참고하시면 됩니다. 좀 더 빠르게 테스트 해보시려면 Android 테스트앱과 샘플 테스트 케이스를 받아 해보실 수 있습니다.

이 글은 AWS Mobile Blog의 Test user flows through your Android app with AWS Device Farm’s built-in app explorer. No scripts required.의 한국어 번역입니다.

AWS Device Farm, iOS 모바앨 앱 테스트 지원 임박

on | in AWS Device Farm |

이달 초 AWS Device Farm을 새로 출시하고 Android 및 Fire OS 장치에서 손쉽게 클라우드 기반 모바일 앱 테스트를 할 수 있게 되었습니다.

이제 곧 Apple의 스마트 폰과 태블릿에서도 모바일 앱 테스트 할 수 있습니다. 2015년 8월 4일에 아래 테스트 자동화 프레임 워크와 함께 iOS 기기 테스트를 지원할 예정입니다 :

또한, Device Farm에 내장되어있는 Fuzz 테스트도 사용할 수 있습니다. 이 테스트를 이용하면 디바이스에 무작위로 사용자 인터페이스 이벤트를 발생시켜 그 결과를 확인할 수 있습니다.

아래에서 iOS 기기에서 테스트를 진행하는 스크린 샷을 일부 먼저 보여드립니다. Device Farm에 응용 프로그램을 업로드하여 테스트 할 응용 프로그램을 선택할 수 있습니다 :

테스트를 시작한 후, (위의 스크린샷 Step 5) 테스트 결과와 앱의 스크린 샷이 바로 화면에 나타납니다 :

이제 iOS를 새롭게 지원하여 모바일 크로스 플랫폼 테스트도 할 수 있게 되어 여러분이 이용하는 어떤 플랫폼이나 테스트 프레임워크에 관계없이 일관된 테스트 보고서(높은 수준의 테스트 결과, 문제 패턴, 로그 및 스크린샷, 성능 데이터)를 얻을 수 있습니다. 만약 Appium와 Calabash 같은 크로스 플랫폼 테스트 프레임워크를 사용하고 있으면 동일한 코드를 Android, Fire OS, iOS에서 함께 사용할 수 있습니다.

미리 준비하세요!

말씀 드린 대로 일주일 이내에 iOS 지원이 됩니다. 여러분, Device Farm 문서를 미리 확인하여 앞서 언급한 프레임워크를 사용해서 직접 테스트 코드를 만들어 보시고 기다려주십시오.

Jeff;

이 글은 Coming Soon – AWS Device Farm Support for iOS Apps의 한국어 번역입니다.

AWS Device Farm – 실제 기기로 모바일 앱 테스트하기

on | in AWS Device Farm |

“Write once, test everywhere”(개발하면 어디에서도 테스트 할 수 있다)”는 캐치 프레이즈는 다른 기술을 설명하기 위해서 만들어졌지만, 모바일 어플리케이션에도 동일하게 적용될 수 있다고 생각합니다. 다양한 통신사, 제조사, 모델, 운영체제(버전, 패치, 확장 등 포함), 화면 크기, 입력 장치, 연결 옵션, 장치 설정 그리고 권한 설정 등의 종류를 테스트 지표로 삼으면 거의 무한대 테스트 케이스를 만들게 됩니다. 장치의 위치나 언어 선택 등은 넘어가더라도요. 이뿐 아니라 인기있는 어플리케이션들의 빠른 배포 주기 (경우에 따라 일일 배포) 및 테스트는 비용이 많이 들고, 복잡하고 힘든 일입니다. 따라서 많은 어플리케이션 개발자들이 통합 테스트를 포기하거나 어플리케이션의 배포 대상을 적절한 종류의 가능한 장치들로만 한정하게 됩니다.

새로운 AWS Device Farm
오늘 새로운 AWS Device Farm을 소개하려고 합니다. 이 새로운 서비스는 여러분들이 안드로이드 및 Fire OS 어플리케이션을 200개 이상(장치 및 운영체제 종류 별)의 고유한 환경에서 빠르고 안전하게 테스트함으로서 품질을 향상 시킬 수 있도록 도와드립니다.

여러분께서는 쉽게 여러분의 어플리케이션을 업로드하고, 테스트를 수행하기 위한 장치를 선택하고, 여러분의 선택에 따른 테스트를 수행하도록 할 수 있습니다. 테스트가 완료되면 여러분들께서는 실시간 보고서를 받으실 수 있어, 문제점을 신속하게 확인하고 해결할 수 있도록 합니다.

테스트 팜 사용하기
Device Farm을 살펴 보도록 하겠습니다. 테스트를 위하여 IMDB Movie App을 사용하도록 하겠습니다. 첫번째 단계로 새로운 프로젝트를 생성합니다.

테스트가 준비가 되면, 새로운 Run을 생성합니다. Run은 테스트 될 어플리케이션 및 수행되어야 할 테스트 및 테스트가 실행될 장치를 인식합니다. 만약 업로드 된 어플리케이션을 가지고 있으면, 이 곳에서 시작할 수 있습니다. 그렇지 않으면 간단히 Upload를 클릭합니다. 안드로이드 및 Fire OS 어플리케이션은 APK 파일들로 업로드 됩니다.

만약에 패키지가 한 개 이상의 어플리케이션을 가지고 있으면 원하는 하나의 어플리케이션을 선택 할 수 있습니다. (Minimum SDK 항목은 해당 바이너리가 SDK 14 또는 이상에서 실행될 것을 나타냅니다. 이는 어플리케이션과 호환 가능한 장치를 결정하는데 사용됩니다.)

그리고 나서 Run을 위한 Test 를 구성합니다. 내장된 fuzz 테스트를 사용할 수도 있고, Appium, Calabashuiautomator를 위한 스크립트 작성을 선택할 수도 있습니다. 또한, JUnit, RobotiumEspresso를 이용한 기기 테스트를 실행할 수도 있습니다.

Calabash 스크립트가 있어서 이를 업로드하고 사용하겠습니다 :

이제 테스트를 수행하고자 하는 장치를 선택할 수 있게 됩니다. AWS Device Farm은 어플리케이션 호환성을 확인하고 모든 호환 가능한 장치를 선택할 수 있습니다. 또는 Device Pool을 생성하고 원 하는 장치를 선택할 수 있습니다. 첫번째 옵션을 선택하고 진행하겠습니다.

장치 상태에 대하여 제어할 수 있습니다. 파일을 추가로 업로드하거나, 다른 어플리케이션을 설치하거나, 원하는 통신 채널을 활성화하거나, 장치의 위치 설정을 지정하거나, 로케일을 선택할 수 있습니다.

그리고나서 테스트를 수행을 준비하기 위한 설정을 확인합니다 :

테스트는 Confirm and start run을 클릭하자마자 시작되며, 장치 가용 여부에 따라(일반적으로 수초 단위) 테스트를 시작합니다. 콘솔에서 장치 별 기준으로 테스트 상태를 표시합니다.

테스트가 진행되면 화면이 업데이트됩니다. 이번 테스트 싱행에서는 몇 가지 문제가 확인되었습 니다. (실패 및 경고 항목 참고). AWS Device Farm은 결과를 단순화하여 표시하기 위하여 테스트 결과를 그룹화하여 표시합니다.

여기에서는 개별 문제를 조사 할 수 있습니다 :

테스트 수행 중에 캡처된 스크린 샷에 접근할 수 있습니다 :

또한 테스트 중에 성능(CPU, 메모리 활용율 및 쓰레드 개수) 또한 확인할 수 있습니다 :

테스트 중에 생성된 파일들에 접근할 수 있습니다 :

테스트 결과 문제를 조사하여 파악한 후, 수정하여 다시 테스트를 작성하고 실행할 수 있습니다.

또한, 위의 각 단계의 일부나 전체를 자동화하는 옵션도 있습니다! 프로젝트 생성 장치 풀 생성, 파일 업로드, 장치/프로젝트/작업 (테스트 결과 포함)에 대한 정보 취득 등 각종 기능은 Device Farm API에서 실행할 수 있습니다. 그리고 ScheduleRun를 한 번 호출 만하면 테스트하도록 스케줄링 할 수 있다는 것은 매우 중요합니다. 또한 Jenkins 플러그인을 제공하고 다른 CI( Continuous Integration) 시스템과 연계할 계획을 가지고 있습니다.

정식 출시
AWS Device Farm은 오늘 정식 출시되어 여러분의 어플리케이션 테스트를 지금부터 시작할 수 있습니다.(자세한 것은 AWS Device Farm Developer Guide를 참고하십시오.)

과금은 장치 사용 시간(Device minutes) 단위로 과금되며, 즉, 각 장치에서 하나의 테스트를 실행 한 시간(분)에 의해 결정됩니다. 먼저 250 device minutes 무료 사용이 가능합니다. 요금은 device minutes 당 $0.17입니다. 또한 비종량 과금 계획도 준비하고 있으며, 지원되는 Android 또는 Fire OS 장치에서 1개월 장치 당 $250의 정액 요금으로 이용하실 수 있습니다.

Jeff;

이 글은 AWS Device Farm – Test Mobile Apps on Real Devices의 한국어 번역으로 AWS코리아 솔루션즈 아키텍트로 일하는 김상필님이 수고해주셨습니다.