Convergence [ Development of auto-navigation and governance technology for mobile application test automation ] BD 2015. 8. 모모모 모모모모모모 모모모 모모모모 모모 모모모모 모 모모모모모모
Convergence
[ Development of auto-navigation and governance technology for mobile application test automation]
BD 2015. 8.
모바일 애플리케이션 테스트 자동화를 위한 자동탐색 및 제어기술개발
Convergence
Convergence
The Current Problems
모바일 앱스토어 사업자들이 제공하는 많은 앱들중 ( 특히 Android 애플리케이션 ) 상당수가 제대로 된 테스트 환경의 결여와 시간과 비용의 문제로
탑재될 가능성이 있는 모든기기에서 테스트를 수행하지 못한 채 시장에 출시가 되고있습니다 .
Convergence
6 개월 이내 최소 56% 이상의 사용자는 ‘후진’ 경험 ...
출처 : Mobile App Survey Report (Compuware, 2013)
비정상종료 / 무반응
구동속도가 느림
구동이 안됨
기타
Convergence
‘ 후진’ 경험에 대한 사용자 반응
출처 : Mobile App Survey Report (Compuware, 2013)
Convergence
사용자는 얼마나 기다릴 수 있을까…
Yesterday Today
출처 : Mobile App Survey Report (Compuware, 2013)
Convergence
이제는 출시 시기보다 품질이 중요한 시대…
출처 : Verizon DBIR 2012, IDC, Infonetics Research
Convergence
Device Fragmentaion … 안드로이드만 24,093 종( 種 )
Source: Android Device Fragmentation Report (OpenSignal, 2015)
3
Convergence
다양한 스마트 기기 출현 , 모바일 OS 파편화에 따라 ,모바일 애플리케이션 테스트는 시간과 비용의 제약으로 모든 모바일 단말에서 전수 시험한다는 것은 사실상 불가능 해지고 있습니다 .
Convergence
Needs to The New TECH
테스트 대상 모바일 기기의 수와 상관없도록 테스트 시간과 비용의 문제를 제거하여
기본적인 품질을 갖출 수 있도록 할 수 있는 방법은 없는 걸까요 ?
Convergence
시간과 비용의 문제를 제거할 수 있는 방법은 테스트 자동화뿐 입니다 . 가장 일반적이고 발전된 자동화 방식은 “ Record & playback” 입니다만 ,
앱 기동한 기록들을 재생하여 테스트를 반복하는 방식으로기기가 많아지면 기기별 차이에 따른 사용자 액션들이 재기록 되어야 합니다 .
이 또한 시간과 비용문제가 여전히 존재합니다 .
Convergence
기록 및 재생 (Play & Playback) 역시 사람 액션임으로…
record &
playback
개발단계Tester
테스트 개별단말환경 수동구성
Convergence
테스트 자동화의 새로운 방식 #1
대상 단말들에 대한 제어와 앱 설치 , 그리고 테스트를 병렬과 분산방식으로 처리하는 기술이 있습니다 .실 단말을 제어하여 앱 바이너리 업로드와 입력값 설정 후 앱 자동설치 및 자동런치 자동탐색 기동합니다 . 자동탐색중 실행케이스를 분산하여 수행후 병합처리하여 수행속도를 극대화 합니다 .
[ 실단말 테스트 환경구성 자동화 기술 ]
Convergence
테스트 자동화의 새로운 방식 #2
바이너리 업로드 과정에서 실시간으로 수집한 UI 객체들에 대한 정보 ( 예 : 버튼 크기 , 위치 등 ) 와 UI 객체별 발생 가능한 이벤트 정보를 추출하는 기술이 있습니다 . 이 기술이 확장되면 사용자 애플리케이션 및 모바일 기기 사용 행태 정보를 수집 및 분석할 수있는 딥러닝 에이전트가 됩니다 .
[ 실시간 객체분석 ]
Convergence
테스트 자동화의 새로운 방식 #3
사용자에 의한 애플리케이션 기동과 사용자 입력 ( 예 : 화면 터치 ) 을 자동으로 수행해주는 기술이 있습니다 .이 기술은 확장되면 다양한 앱 테스트와 품질에 대한 자동화 , 호환성 테스트 , 기능 테스트 , 성능 테스트 , 회귀 테스트 , 스트레스테스트 , 부하테스트 등 Android 와 iOS 뿐만 아니라 웹 표준 기술을 사용하는 기기와 애플리케이션 ( 예 : 웨어러블 기기 ) 에 대한 테스트 자동화로 확장될 수 있습니다 .
[ 자동탐색 ]
Convergence
새로운 방식은 새로운 수요 ( 需要 ) 를 만듭니다 .
자동탐색(Auto Navigation)
테스트 환경구성 자동화
개발단계
테스트 개별단말환경 수동구성record
& playbac
k
실시간 객체분석
Tester
비즈니스 기회를 제고하는 가치
Convergence
“ 자동탐색”과 “실시간 객체분석” 및 “테스트 환경 구성 자동화” 기술은 대상 모바일 기기 별로 수행해야할 수작업을 제거하여 복수 개 단말에 필요한 시간 / 비용을 하나의 기기와 거의 동일한 수준으로 유지해주는 기술입니다 .
Convergence
Test Script 삽입방식 Record 및 자동생성방식 자동탐색방식 .
사람이 관여할 일이 거의 없어졌습니다 .
테스트 스트립트를 작성할 필요가 없고 , 앱이 수정되면 레코딩을 다시 해야 했던 기존 방식과는 달리 , 자동탐색은 실행해야 할 메뉴를 촘촘히 찾아내어 순차적으로 실행하므로 사람이 관여할 일이 거의 없습니다 .
Convergence
구분 Manual testing
Automated testing 자동탐색(Auto-Navigation)Test script Record & Playback
용이성Easy
Do every test on every device
Very DifficultWrite test script and run, edit test script
DifficultRecord tester actions and repeat, re-record Google’s Appuify, SOASTA, Keynote, Perfecto Mobile
Very easyUpload app package
file
비용 Your own devicesor remote devices
Some vendors provides cloud devices Cloud devices
용도 General purpose
Special purpose(smoke test, stress
test, device compatibility, etc)
속도 Takes much timeTakes time for writing script and managing
Takes time for recording and re-
recodingTests only serveral
devices simultaneously
Easy, Quick and Fast
Convergence
MAiP 솔루션
TESTYD comparison in human works
Convergence
“ 자동 탐색” 결과 데이터를 시각화 분석함으로써 대상 애플리케이션에 대한 정성적 및 정량적 수준을 평가하고 , 개발 단계 또는 운영 중인 대상 애플리케이션의 여러 버전에 대해 상호 비교함으로써 , 개선 정도 및 변경 영향도 등을 파악할 수 있습니다 .
Convergence
TESTYD can reduce human works for testing up to 90%.
Convergence
결과를 통한 문제점 확인 및 개선점 도출* 크래시 , 프리즈 , 성능 저하 부분 파악을 통한 개선 지점 도출* 에러 구간의 애플리케이션 / 시스템 로그 제공을 통한 오류 원인 파악 지원
Convergence
“ 수백대도 한대같은 시간과 비용으로 호환성 검증 ”
자동탐색
Agility
Failure
버전별
배터리
UX/UI
3rd Party Library
오작동
성능
네트웍
DDMS
Heap
CPU
메모리
학습
Frequency
Dalvik
Crash
Bug
시각화
Garbage
fragment
NDS
소스코드
TESTYD™… 지능형에이전스 기술를 이루는 첫번째 이유
기능테스트
딥러닝
성능
스트레스 / 부하
회귀테스트
호환성
Convergence
“ 기능 , 성능 , 회귀 , 스트레스 / 부하 , 호환성등 전체적 사용성 검증”
TESTYD™… 지능형에이전스 기술를 이루는 두번째 이유
자동탐색
기능테스트
딥러닝
Agility
Failure
버전별
배터리
회귀테스트
UX/UI
3rd Party Library
오작동
성능
네트웍
DDMS
Heap
CPU
메모리
학습
Frequency
Dalvik
Crash
Bug
시각화
Garbage
fragment
NDS
소스코드
스트레스 / 부하호환성
Convergence
Visualization
Developers StakeholderDeveloper Portal
Test Management
indicatorAgent
TESTYD™ Product
Analytic Engine
reportDashboard
CI 시스템진척 / 이슈 관리
요구검증기능테스트
사용성품질
QA 보고서개선권고안
사용성예측성능 / 보안성Compliance
사용자관리앱관리미터링 / 빌링
결과관리부가서비스
Convergence