반응형

출처: https://www.youtube.com/watch?v=wZxwq9lXF2E

Learn mobile application testing from Scratch, 2018 10 5

 

모바일 앱 테스팅에 대한 기초적인 설명을 하는 11분 길이의 동영상

 


 

테스트 시나리오

아래는 모바일 앱을 테스팅할 때 기본적으로 체크해야 하는 주요 목록이다.
체크해야 할 기능들이 디바이스에 특정한 것(device-specific)도 있고 앱에 특정한 것(application-specific)도 있다. 

  • Communication: 앱을 사용하는 중에 통화나 메시지를 수신하면 어떻게 되는가? 현재 앱이 통화/메시지 인터럽트를 처리할 수 있는가?
  • Orientation: 앱이 수직 모드와 수평 모드 모두에서 잘 작동하는가? 스크린 회전이 앱의 UI와 기능에 이상을 초래하거나 크래시(crash)를 일으키면 안된다.
  • Platform: 두 개의 주요 플랫폼인 안드로이드와 iOS 관련 체크. 안드로이드 관련 체크해야 하는 몇 가지 가이드라인이 있고, iOS 애플리케이션의 경우 백그라운드 태스크로 실행할 수 없는 몇몇 기능이 있다. 테스팅 중에 이러한 것들을 염두에 두고 확인해야 한다.
  • Network: 테스트 대상 앱이 커버리지가 나쁜 Wi-Fi, 3G, 4G 등에서 동작할 수 있어야 한다. 인터넷 연결이 없거나 안정적인지 않을 때 적절할 메시지가 사용자에게 전달되는가? Low Network 등에서 사용자에게 알림 없이 그냥 앱을 종료하는 것은 바람직하지 않다(앱 크래시가 디바이스 때문인지 네트워크 때문인지 알 수 없게 되어 잘못된 방향으로 비난의 화살을 돌림).
  • Gesture: 더블터치, 줌인, 줌아웃, 핀치 등의 모든 가능한 제스처를 확인
  • Notifcation: 오프라인이나 온라인 모드에서 알림이 동작하는가? 디바이스가 여러 개인 경우 로그인한 모든 디바이스에서 알림이 오는지, 특정 디바이스에서 로그아웃 하면 리다이렉트 되는지 같은 알림 관련 체크를 수행해야 한다.

  

빌드 타입(Development Build)과 설치

  • Android (apk): 오픈 소스이므로 Play Store에서 apk를 다운로드 해서 디바이스 상에 설치. 여러 다른 버전을 테스트하기 위해 많은 디바이스를 구매할 필요 없이 에뮬레이터를 생성하여 테스트 가능
  • iOS (ipa, app): App Store에서 ipa를 다운로드 받아서 설치. 다만 안드로이드와 달리 승인된 디바이스에서만 설치 가능(예를 들어, iCloud ID 또는 UDID가 개발자 계정과 바인딩 되어야 함). 시뮬레이터로 테스팅 하는 경우 ipa가 아니라 .app을 사용해야만 함

 

API Validation

모바일 앱이 서버와 통신할 때 API 바인딩이 일어나는 데
이렇게 송수신되는 것(request, response)을 검증하고 싶을 때 아래와 같은 프록시 툴을 활용한다.

  • Charles Proxy
  • Burp-suite

  

Logs

정확이 어디가 문제인지 찾기 위해 로그를 체크 및 분석해야 할 필요가 있다. 

  • 안드로이드에서는 DDMS logs를 체크하거나 Play Store에서 logcat 앱을 찾아 설치하면 디바이스 로그를 보여준다.
  • iOS 디바이스에서는 Itools 또는 iPhone Diagnosis Logs를 사용하여 로그를 체크한다.

 

반응형

+ Recent posts