SlideShare ist ein Scribd-Unternehmen logo
1 von 62
Mobile testing trend
Agenda
Feature phone
• Contains a fixed set of functions
beyond voice calling and text
messaging
• Not as extensive as a smartphone.
• For example,
– offer Web browsing and e-mail, but
generally cannot download apps from an
online marketplace, such as Whatsapp
Difference between feature phones
and smartphones
Page 3
Understanding of Mobile App and Its
Development Life Cycle
Smartphone
• With built-in applications and
Internet access.
• Advanced application
programming interfaces (APIs)
• Able to run different kinds of
free and paid third-party
applications to have better
integration with the phone's OS
and hardware
Difference between feature phones
and smartphones
Page 4
Understanding of Mobile App and Its
Development Life Cycle
Marketplace
Mobile Platform
iOS Android Windows Phone BlackBerry OS
Company Apple, Inc Google Microsoft BlackBerry
Current Version 7 4.4 8 7.1
License Proprietary
Free and open-
source
Proprietary Proprietary
Accessibility
features
Yes Yes Yes Yes
NFC Payment
Software
No
Available on any
device that
supports the
hardware.
Available for
Version 8+
Yes
Official
Application Store
App Store Google Play
Windows Phone
Store
BlackBerry World
Voice Recognition Yes Yes Yes Yes
Multitasking Yes Yes Yes Yes
Desktop
interactive
widgets
No Yes
Yes (through "live
tiles")
No
Comparison of various mobile platforms
Page 6
Understanding of Mobile App and Its
Development Life Cycle
Evolution of Mobile Devices
Source: mobileworldcapital.com
Page 7
Evolution of Mobile Devices
Page 8
Understanding of Mobile App and Its
Development Life Cycle
Evolution of Mobile Devices
Page 9
Understanding of Mobile App and Its
Development Life Cycle
Mobile Evolution
Market Share
Mobile OS
World Wide OS Market Share Trend
• Type of Apps:
– Communication, calendar, clock, calculator
– Photos, weather, maps
– Games, eBooks
– Tablet applications
• Total Apps Number:
– Over 800,000 Apps available on Google Play
(2013 May)
– Around 850,000 mobile apps in the Apple App
Store (2013 May)
Evolution of Mobile Applications
Page 14
Understanding of Mobile App and Its
Development Life Cycle
Difference between Mobile Web
and Mobile App
What is a Mobile Web?
• Similar to any other website, designed for the
smaller handheld display and touch-screen
interface
• Linked and accessed over the Internet through
mobile device’s web browser
What is a Native App?
• A native mobile app is installed directly onto
the device
• Download and install through an online store or
marketplace for a given operating system.
Page 15
Understanding of Mobile App and Its
Development Life Cycle
Difference between Mobile Web
and Mobile App
Mobile Web Mobile App
Storage of application In server side Download and install to
the mobile device
Activation of application Access through mobile
browser
Directly access by clicking
the icon
Require user to install any
application
No Yes
Data traffic over network More Less
Integration with phone
specific features
No Yes
User experience Normal Richer
Page 16
Understanding of Mobile App and Its
Development Life Cycle
Difference between Mobile Web
and Mobile App
Mobile Web Mobile App
OS dependence Low High
Development effort Less More
Application Update Only on server side Users are required to
download and install a
new version
Maintenance and support
effort
Less More
Page 17
Understanding of Mobile App and Its
Development Life Cycle
APP DEVELOPMENT
METHODOLOGIES
• Development Kit for some of the popular
platforms:
Overview of Development
Platforms for Mobile App
Development
iOS Android BlackBerry
Windows
Mobile/Windows
Phone
Symbian
iOS SDK Android SDK BlackBerry Java
Development
Environment
(JDE)
Windows Mobile –
Microsoft Visual
Studio 2008
Windows Phone –
Windows Phone
Developer Tools
Qt SDK,
Symbian^3 SDK
Page 19
Understanding of Mobile App and Its
Development Life Cycle
• Other than SDK, each mobile platform has
additional development tools for facilitating
the programming.
Overview of Development
Platforms for Mobile App
Development
iOS Android BlackBerry
Windows
Mobile/Windows
Phone
Symbian
Xcode IDE Android
Development
Tools (ADT) Plugin
for Eclipse,
Android Native
Development Kit
(NDK)
BlackBerry Java
Plug-in for Eclipse
Visual Basic for
Windows Phone
Develop Tools
Carbide.c++ IDE
Page 20
Understanding of Mobile App and Its
Development Life Cycle
• Xcode IDE
Overview of Development Platforms for
Mobile App Development
iPhone Simulator
Page 21
Understanding of Mobile App and Its
Development Life Cycle
• Eclipse with Android SDK
Overview of Development Platforms for
Mobile App Development
Android Emulator
Page 22
Understanding of Mobile App and Its
Development Life Cycle
• Developing multiple mobile apps with single
source code
• Some tools use web standards for development
while some need to use proprietary
programming languages.
• For development tools using web standards,
they work in two approaches.
– generate the codes as embedded web content
within the mobile app (e.g. PhoneGap)
– recompile the web codes into native codes (e.g.
Titanium Mobile)
Cross-Platform Development Tools
Page 23
Understanding of Mobile App and Its
Development Life Cycle
These tools have some common limitations:
• Most of the tools cannot support all common
mobile OS platforms.
• Although web standards are used by some of
these tools, some advanced features like AJAX
are not supported by tools like MotherApp.
• Performance of mobile apps developed by
these tools may not as good as those
developed by native programming language.
• Most of the tools do not provide API for
interfacing with Bluetooth and video capture.
Cross-Platform Development Tools
Page 24
Understanding of Mobile App and Its
Development Life Cycle
PhoneGap
Titanium
Mobile
MotherApp Rhodes Corona
Company Nitobi Appcelerator MotherApp Rhomobile Ansca
Product Type Open Source Open Source Proprietary Open Source Proprietary
Programming
Language
HTML, CSS,
JavaScript
HTML, CSS,
JavaScript
MotherAPP
HTML
HTML, CSS,
JavaScript,
Ruby
Lua
Online
Conversion
Service
Yes No Yes No No
Development
Kit
Nil Titanium
Studio
Nil RhoStudio Corona SDK
Cross-Platform Development Tools
Page 25
Understanding of Mobile App and Its
Development Life Cycle
Supported Platforms
Cross-Platform Development Tools
PhoneGap
Titanium
Mobile
MotherApp Rhodes Corona
iOS Yes Yes Yes Yes Yes
Android Yes Yes Yes Yes Yes
BlackBerry Yes Yes(beta) Yes Yes No
Windows
Mobile Yes No No Yes No
Windows
Phone No No No Yes No
Symbian Yes No No Yes No
Others WebOS Nil Nil WebOS Nil
Page 26
Understanding of Mobile App and Its
Development Life Cycle
MOBILE APPLICATION TESTING
Mobile Application Testing
Mobile Testing
• Diversity: OS Platforms X Hardware X Devices
X Carrier Networks
• Native vs. Web Applications
• Functionality: Talking, Gaming, Browsing,
Listening, Business, Communication
• User Experience: Installation, Usability,
Connectivity, Data Usage etc
Challenges involved in Mobile
Application Testing
Mobile App Diversity
• Integration with existing Systems
• Accelerated Development
• Performance & Security
• Backward Compatibility
Challenges
Customers Challenges in Mobile
Testing
• Variety of mobile devices in market and multiple
manufacturers
• Coping with the short lifestyle of the mobile
application in market
• Huge variety of hardware capabilities
• Shorter duration of device life in the market
• Variety of network models like 2G/3G/4G/Wi-Fi
• Huge investment and high time frame to set up an
test lab
• Most of the tools are image based comparison
tool
• One test tool may not support all platforms versions
• Testing on latest technologies like HTML5, NFC, etc.
• High rise of localized app capability
• Choice between simulators and real devices for
testing
• Test the application with different models if
possible
• Conduct testing on different connection
speeds
– GPRS for low connection speed and
– 3G/HSPA/Wi-Fi for high connection speed.
• Conduct testing in new mobile OS version when
a new mobile OS version upgrades.
• Make sure that the application has undergone
full testing with bug-free before submitting to a
mobile application store.
Testing Strategy for Mobile
App
Page 34
Understanding of Mobile App and Its
Development Life Cycle
• Quick swipe (user experience, quit app
scenarios)
• Orientation
• Different devices (resolutions, compatibility)
• No network scenario
• Features Test (esp. cross app cases)
• Stress Test (including server side)
Testing Strategy for Mobile
App
Page 35
Understanding of Mobile App and Its
Development Life Cycle
Components of Mobile Testing
• Mobile emulator provides an easy way for testing
the application without the needs of actual device.
• Emulator cannot perform some hardware related
testing
– onboard camera
– GPS,
– sensors,
– multitouch,
– telephony,
– accelerometer feedback
• Testing with actual device must be conducted
before the application is released.
Testing Strategy for Mobile
App
Page 37
Understanding of Mobile App and Its
Development Life Cycle
Tool Selection Criteria
Some Popular Mobile Testing Tools
Mobile Automation – Desktop Based
• Mobile test automation tools are installed on a desktop locally
• Interacts with the mobile devices Through USB connection or
Wi-Fi
• Mobile Apps can be installed & tested on both Emulators and
real devices
Mobile Automation - Image vs Object
Recognition
Mobile Automation – Desktop Based
Comparison of Mobile Test Tools in Market
• Stable Automation Framework
useful across multiple
Platforms
• Use Emulators for Automation
early in the development
cycle
• Use Real device for
automation only to emulate
real time usage
When to plan Automation?
1. Define the automation scope
2. Select the Test Automation Tool suitable for
your application and supports multiple Oss
3. Start by building automation scripts for
smoke testing
4. Gradually build a basic test suite for
regression testing that represents business
critical use cases
How to implement Automation
Tools?
Tools Landscape
• MonkeyTalk supports both iOS and Android
mobile application for automation
MonkeyTalk
Application APK File Android Emulator
MonkeyTalk IDE
MonkeyTalk
TestScript
Eclipse IDE with AspectJ Plug-in
Android SDK
• Selenium supports iOS and Android mobile
applications for automation
Selenium for Mobile
Eclipse IDE
Selenium
WebDriver
Android Emulator
Selenium TestScript Android SDK
• Supports Android applications for
Auotmation
• Robotium RC can be utilized to run
testscripts in a Test Lab setup
Robotium
Mobile Testing – Infrastructure
Options
Mobile Infrastructure - Emulators
Mobile Infrastructure – Real Devices
Mobile Infrastructure – Device Selection
Mobile Infrastructure - Cloud
Mobile Testing Approaches -
Infrastructure
• Test Early and Often
• Create matrix of Platforms, Device, Network
Connections (2G, 3G, wi-fi, LTE, etc.),
Carriers for Testing (Including different OS
versions)
• Test for Performance and Security
• Keep Target Audience in mind while testing
• Tool selection should take into account
emulator and real device support across
platfomrs
Best Practices
CASE STUDY
搜尋孫中山
• iPhone and Android phone apps for
the Campaign on 1911 Revolution
• With Augmented Reality (AR) and
interactive user experience
• Guide users on a virtual journey
through 30 designated spots related
to the history of the 1911 Revolution
and Dr Sun Yat-sen in Hong Kong.
Where is Dr. Sun?
搜尋孫中山
Augmented Reality (AR)
• 30 check points with
GPS locating function.
• Take photos with the
stamp
• To ensure the function
goes well, Crossover
did the site visit both
individually and with
the client.
Where is Dr. Sun?
搜尋孫中山
Q&A and Badges
Collection
• Answer the multiple
choice questions for
each checkpoint and
earn a badge
• Get the Final Badge
within a specific area
Where is Dr. Sun?
搜尋孫中山
-END-

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (19)

Intro to mobile technology
Intro to mobile technologyIntro to mobile technology
Intro to mobile technology
 
smart phone
smart phonesmart phone
smart phone
 
Smartphone technology
Smartphone technologySmartphone technology
Smartphone technology
 
Smart phone
Smart phoneSmart phone
Smart phone
 
Smartphone and its features
Smartphone and its features Smartphone and its features
Smartphone and its features
 
An overview of mobile technologies
An overview of mobile technologiesAn overview of mobile technologies
An overview of mobile technologies
 
Powerpoint presentation1 smartphones
Powerpoint presentation1  smartphonesPowerpoint presentation1  smartphones
Powerpoint presentation1 smartphones
 
Introduction to Smart phones
Introduction to Smart phonesIntroduction to Smart phones
Introduction to Smart phones
 
Smartphones 2015
Smartphones 2015Smartphones 2015
Smartphones 2015
 
Smart Phone
Smart PhoneSmart Phone
Smart Phone
 
Evolution_In_Mobile_Technology
Evolution_In_Mobile_TechnologyEvolution_In_Mobile_Technology
Evolution_In_Mobile_Technology
 
Mobile handests ppt
Mobile handests pptMobile handests ppt
Mobile handests ppt
 
Smart devices
Smart devicesSmart devices
Smart devices
 
Introduction to mobile technology
Introduction to mobile technologyIntroduction to mobile technology
Introduction to mobile technology
 
Securing hand held computing devices
Securing hand held computing devicesSecuring hand held computing devices
Securing hand held computing devices
 
Mobile application development2
Mobile application development2Mobile application development2
Mobile application development2
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
 
Smart phone
Smart phoneSmart phone
Smart phone
 
Informate - SmartPhone Metrics And Analysis - March 2010
Informate - SmartPhone Metrics And Analysis - March 2010Informate - SmartPhone Metrics And Analysis - March 2010
Informate - SmartPhone Metrics And Analysis - March 2010
 

Ähnlich wie Mobile testing

Mobile testing
Mobile testingMobile testing
Mobile testingAlex Hung
 
Introduction to Mobile Apps
Introduction to Mobile Apps Introduction to Mobile Apps
Introduction to Mobile Apps Shahryar Khan
 
Intro to Mobile Apps
Intro to Mobile AppsIntro to Mobile Apps
Intro to Mobile AppsShahryar Khan
 
Simon Bates, Manifesto Digital - Mobile Application Development: Past, Presen...
Simon Bates, Manifesto Digital - Mobile Application Development: Past, Presen...Simon Bates, Manifesto Digital - Mobile Application Development: Past, Presen...
Simon Bates, Manifesto Digital - Mobile Application Development: Past, Presen...Simon Bates
 
03 - Membangun Aplikasi Mobile Berkualitas (Herman Tolle)
03 - Membangun Aplikasi Mobile Berkualitas (Herman Tolle)03 - Membangun Aplikasi Mobile Berkualitas (Herman Tolle)
03 - Membangun Aplikasi Mobile Berkualitas (Herman Tolle)Lab Mobile Filkom UB
 
Mobile Application testing
Mobile Application testingMobile Application testing
Mobile Application testingMukta Gupta
 
Performance testing – mobile apps session1
Performance testing – mobile apps   session1Performance testing – mobile apps   session1
Performance testing – mobile apps session1Jyothirmayee Pola
 
Performance testing – mobile apps session1
Performance testing – mobile apps   session1Performance testing – mobile apps   session1
Performance testing – mobile apps session1Jyothirmayee Pola
 
Deal with the dilemma of hybrid and native
Deal with the dilemma of hybrid and nativeDeal with the dilemma of hybrid and native
Deal with the dilemma of hybrid and nativeswamileo1
 
Crossplatform Mobileapplications
Crossplatform MobileapplicationsCrossplatform Mobileapplications
Crossplatform MobileapplicationsRamkumar R
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application TestingSun Technlogies
 
Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing Shivaraj R
 
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha TouchBuilding Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha TouchAxel Buerkle
 
Addressing Mobile App Testing Challenges
Addressing Mobile App Testing ChallengesAddressing Mobile App Testing Challenges
Addressing Mobile App Testing ChallengesLee Barnes
 
3 Types Of Mobile Apps.pptx
3 Types Of Mobile Apps.pptx3 Types Of Mobile Apps.pptx
3 Types Of Mobile Apps.pptxBOSC Tech Labs
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting SmallAndrew Smith
 
MD-I-CH-ppt.ppt
MD-I-CH-ppt.pptMD-I-CH-ppt.ppt
MD-I-CH-ppt.pptbharatt7
 
Top 4 Cross Platform tools for Mobile App Development
Top 4 Cross Platform tools for Mobile App DevelopmentTop 4 Cross Platform tools for Mobile App Development
Top 4 Cross Platform tools for Mobile App Developmenttechugo
 
Mobile developement
Mobile developementMobile developement
Mobile developementLilia Sfaxi
 

Ähnlich wie Mobile testing (20)

Mobile testing
Mobile testingMobile testing
Mobile testing
 
Introduction to Mobile Apps
Introduction to Mobile Apps Introduction to Mobile Apps
Introduction to Mobile Apps
 
Intro to Mobile Apps
Intro to Mobile AppsIntro to Mobile Apps
Intro to Mobile Apps
 
Simon Bates, Manifesto Digital - Mobile Application Development: Past, Presen...
Simon Bates, Manifesto Digital - Mobile Application Development: Past, Presen...Simon Bates, Manifesto Digital - Mobile Application Development: Past, Presen...
Simon Bates, Manifesto Digital - Mobile Application Development: Past, Presen...
 
03 - Membangun Aplikasi Mobile Berkualitas (Herman Tolle)
03 - Membangun Aplikasi Mobile Berkualitas (Herman Tolle)03 - Membangun Aplikasi Mobile Berkualitas (Herman Tolle)
03 - Membangun Aplikasi Mobile Berkualitas (Herman Tolle)
 
PhoneGap Credentials @ Neev
PhoneGap Credentials @ NeevPhoneGap Credentials @ Neev
PhoneGap Credentials @ Neev
 
Mobile Application testing
Mobile Application testingMobile Application testing
Mobile Application testing
 
Performance testing – mobile apps session1
Performance testing – mobile apps   session1Performance testing – mobile apps   session1
Performance testing – mobile apps session1
 
Performance testing – mobile apps session1
Performance testing – mobile apps   session1Performance testing – mobile apps   session1
Performance testing – mobile apps session1
 
Deal with the dilemma of hybrid and native
Deal with the dilemma of hybrid and nativeDeal with the dilemma of hybrid and native
Deal with the dilemma of hybrid and native
 
Crossplatform Mobileapplications
Crossplatform MobileapplicationsCrossplatform Mobileapplications
Crossplatform Mobileapplications
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing
 
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha TouchBuilding Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
 
Addressing Mobile App Testing Challenges
Addressing Mobile App Testing ChallengesAddressing Mobile App Testing Challenges
Addressing Mobile App Testing Challenges
 
3 Types Of Mobile Apps.pptx
3 Types Of Mobile Apps.pptx3 Types Of Mobile Apps.pptx
3 Types Of Mobile Apps.pptx
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting Small
 
MD-I-CH-ppt.ppt
MD-I-CH-ppt.pptMD-I-CH-ppt.ppt
MD-I-CH-ppt.ppt
 
Top 4 Cross Platform tools for Mobile App Development
Top 4 Cross Platform tools for Mobile App DevelopmentTop 4 Cross Platform tools for Mobile App Development
Top 4 Cross Platform tools for Mobile App Development
 
Mobile developement
Mobile developementMobile developement
Mobile developement
 

Mehr von Alex Hung

HKICTA BSIA 2015 final report 20150601
HKICTA BSIA 2015 final report 20150601HKICTA BSIA 2015 final report 20150601
HKICTA BSIA 2015 final report 20150601Alex Hung
 
The ONE presentation version 16 bilingual
The ONE presentation version 16 bilingualThe ONE presentation version 16 bilingual
The ONE presentation version 16 bilingualAlex Hung
 
Thanks Mila's Presentation of 痰濕體質的調理
Thanks Mila's Presentation of 痰濕體質的調理Thanks Mila's Presentation of 痰濕體質的調理
Thanks Mila's Presentation of 痰濕體質的調理Alex Hung
 
Rotary club of Peninsula Sunrise hunan flood relief visit Sep 2014
Rotary club of Peninsula Sunrise hunan flood relief visit Sep 2014Rotary club of Peninsula Sunrise hunan flood relief visit Sep 2014
Rotary club of Peninsula Sunrise hunan flood relief visit Sep 2014Alex Hung
 
Rotary 3450 DG newsletter August 2014
Rotary 3450 DG newsletter August 2014 Rotary 3450 DG newsletter August 2014
Rotary 3450 DG newsletter August 2014 Alex Hung
 
GCE X Rotary 20140811
GCE X Rotary 20140811GCE X Rotary 20140811
GCE X Rotary 20140811Alex Hung
 
Gansu Jul, 2014
Gansu Jul, 2014Gansu Jul, 2014
Gansu Jul, 2014Alex Hung
 
20140212 sick bird app
20140212 sick bird app20140212 sick bird app
20140212 sick bird appAlex Hung
 
Rotary Club of Peninsula Sunrise HK, nov2013 to jan2014, prepared by Rtn Mila...
Rotary Club of Peninsula Sunrise HK, nov2013 to jan2014, prepared by Rtn Mila...Rotary Club of Peninsula Sunrise HK, nov2013 to jan2014, prepared by Rtn Mila...
Rotary Club of Peninsula Sunrise HK, nov2013 to jan2014, prepared by Rtn Mila...Alex Hung
 
Let doctors in, by my friend ,CK Leung
Let doctors in, by my friend ,CK Leung Let doctors in, by my friend ,CK Leung
Let doctors in, by my friend ,CK Leung Alex Hung
 
interesting and creative life of web3.0
interesting and creative life of web3.0interesting and creative life of web3.0
interesting and creative life of web3.0Alex Hung
 
20131030 hkpasea presentation[1]
20131030 hkpasea presentation[1]20131030 hkpasea presentation[1]
20131030 hkpasea presentation[1]Alex Hung
 
Hkpasea 2013 - 7th anniversary
Hkpasea 2013 - 7th anniversary Hkpasea 2013 - 7th anniversary
Hkpasea 2013 - 7th anniversary Alex Hung
 
Crossover Alex Hung Presentation on Mobile apps for Rotary club of HK Harbour
Crossover Alex Hung Presentation on Mobile apps for Rotary club of HK HarbourCrossover Alex Hung Presentation on Mobile apps for Rotary club of HK Harbour
Crossover Alex Hung Presentation on Mobile apps for Rotary club of HK HarbourAlex Hung
 
PanPrd IT FYP 2013 presentation for press release
PanPrd IT FYP 2013 presentation for press releasePanPrd IT FYP 2013 presentation for press release
PanPrd IT FYP 2013 presentation for press releaseAlex Hung
 
mobile apps for Rotary Club of Kowloon Central
mobile apps for Rotary Club of Kowloon Centralmobile apps for Rotary Club of Kowloon Central
mobile apps for Rotary Club of Kowloon CentralAlex Hung
 
talk for HK SME center about web3.0 , AI, mobile apps
talk for HK SME center about web3.0 , AI, mobile appstalk for HK SME center about web3.0 , AI, mobile apps
talk for HK SME center about web3.0 , AI, mobile appsAlex Hung
 
alex hung talk - Robotics - 20130702
alex hung talk - Robotics - 20130702alex hung talk - Robotics - 20130702
alex hung talk - Robotics - 20130702Alex Hung
 
20130507 presentation wsa2013_china_hk_engversion
20130507 presentation wsa2013_china_hk_engversion20130507 presentation wsa2013_china_hk_engversion
20130507 presentation wsa2013_china_hk_engversionAlex Hung
 
20130414 presentation szhk_coop_iproa_seminar_wsa2013
20130414 presentation szhk_coop_iproa_seminar_wsa201320130414 presentation szhk_coop_iproa_seminar_wsa2013
20130414 presentation szhk_coop_iproa_seminar_wsa2013Alex Hung
 

Mehr von Alex Hung (20)

HKICTA BSIA 2015 final report 20150601
HKICTA BSIA 2015 final report 20150601HKICTA BSIA 2015 final report 20150601
HKICTA BSIA 2015 final report 20150601
 
The ONE presentation version 16 bilingual
The ONE presentation version 16 bilingualThe ONE presentation version 16 bilingual
The ONE presentation version 16 bilingual
 
Thanks Mila's Presentation of 痰濕體質的調理
Thanks Mila's Presentation of 痰濕體質的調理Thanks Mila's Presentation of 痰濕體質的調理
Thanks Mila's Presentation of 痰濕體質的調理
 
Rotary club of Peninsula Sunrise hunan flood relief visit Sep 2014
Rotary club of Peninsula Sunrise hunan flood relief visit Sep 2014Rotary club of Peninsula Sunrise hunan flood relief visit Sep 2014
Rotary club of Peninsula Sunrise hunan flood relief visit Sep 2014
 
Rotary 3450 DG newsletter August 2014
Rotary 3450 DG newsletter August 2014 Rotary 3450 DG newsletter August 2014
Rotary 3450 DG newsletter August 2014
 
GCE X Rotary 20140811
GCE X Rotary 20140811GCE X Rotary 20140811
GCE X Rotary 20140811
 
Gansu Jul, 2014
Gansu Jul, 2014Gansu Jul, 2014
Gansu Jul, 2014
 
20140212 sick bird app
20140212 sick bird app20140212 sick bird app
20140212 sick bird app
 
Rotary Club of Peninsula Sunrise HK, nov2013 to jan2014, prepared by Rtn Mila...
Rotary Club of Peninsula Sunrise HK, nov2013 to jan2014, prepared by Rtn Mila...Rotary Club of Peninsula Sunrise HK, nov2013 to jan2014, prepared by Rtn Mila...
Rotary Club of Peninsula Sunrise HK, nov2013 to jan2014, prepared by Rtn Mila...
 
Let doctors in, by my friend ,CK Leung
Let doctors in, by my friend ,CK Leung Let doctors in, by my friend ,CK Leung
Let doctors in, by my friend ,CK Leung
 
interesting and creative life of web3.0
interesting and creative life of web3.0interesting and creative life of web3.0
interesting and creative life of web3.0
 
20131030 hkpasea presentation[1]
20131030 hkpasea presentation[1]20131030 hkpasea presentation[1]
20131030 hkpasea presentation[1]
 
Hkpasea 2013 - 7th anniversary
Hkpasea 2013 - 7th anniversary Hkpasea 2013 - 7th anniversary
Hkpasea 2013 - 7th anniversary
 
Crossover Alex Hung Presentation on Mobile apps for Rotary club of HK Harbour
Crossover Alex Hung Presentation on Mobile apps for Rotary club of HK HarbourCrossover Alex Hung Presentation on Mobile apps for Rotary club of HK Harbour
Crossover Alex Hung Presentation on Mobile apps for Rotary club of HK Harbour
 
PanPrd IT FYP 2013 presentation for press release
PanPrd IT FYP 2013 presentation for press releasePanPrd IT FYP 2013 presentation for press release
PanPrd IT FYP 2013 presentation for press release
 
mobile apps for Rotary Club of Kowloon Central
mobile apps for Rotary Club of Kowloon Centralmobile apps for Rotary Club of Kowloon Central
mobile apps for Rotary Club of Kowloon Central
 
talk for HK SME center about web3.0 , AI, mobile apps
talk for HK SME center about web3.0 , AI, mobile appstalk for HK SME center about web3.0 , AI, mobile apps
talk for HK SME center about web3.0 , AI, mobile apps
 
alex hung talk - Robotics - 20130702
alex hung talk - Robotics - 20130702alex hung talk - Robotics - 20130702
alex hung talk - Robotics - 20130702
 
20130507 presentation wsa2013_china_hk_engversion
20130507 presentation wsa2013_china_hk_engversion20130507 presentation wsa2013_china_hk_engversion
20130507 presentation wsa2013_china_hk_engversion
 
20130414 presentation szhk_coop_iproa_seminar_wsa2013
20130414 presentation szhk_coop_iproa_seminar_wsa201320130414 presentation szhk_coop_iproa_seminar_wsa2013
20130414 presentation szhk_coop_iproa_seminar_wsa2013
 

Kürzlich hochgeladen

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Kürzlich hochgeladen (20)

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 

Mobile testing

  • 3. Feature phone • Contains a fixed set of functions beyond voice calling and text messaging • Not as extensive as a smartphone. • For example, – offer Web browsing and e-mail, but generally cannot download apps from an online marketplace, such as Whatsapp Difference between feature phones and smartphones Page 3 Understanding of Mobile App and Its Development Life Cycle
  • 4. Smartphone • With built-in applications and Internet access. • Advanced application programming interfaces (APIs) • Able to run different kinds of free and paid third-party applications to have better integration with the phone's OS and hardware Difference between feature phones and smartphones Page 4 Understanding of Mobile App and Its Development Life Cycle
  • 6. iOS Android Windows Phone BlackBerry OS Company Apple, Inc Google Microsoft BlackBerry Current Version 7 4.4 8 7.1 License Proprietary Free and open- source Proprietary Proprietary Accessibility features Yes Yes Yes Yes NFC Payment Software No Available on any device that supports the hardware. Available for Version 8+ Yes Official Application Store App Store Google Play Windows Phone Store BlackBerry World Voice Recognition Yes Yes Yes Yes Multitasking Yes Yes Yes Yes Desktop interactive widgets No Yes Yes (through "live tiles") No Comparison of various mobile platforms Page 6 Understanding of Mobile App and Its Development Life Cycle
  • 7. Evolution of Mobile Devices Source: mobileworldcapital.com Page 7
  • 8. Evolution of Mobile Devices Page 8 Understanding of Mobile App and Its Development Life Cycle
  • 9. Evolution of Mobile Devices Page 9 Understanding of Mobile App and Its Development Life Cycle
  • 13. World Wide OS Market Share Trend
  • 14. • Type of Apps: – Communication, calendar, clock, calculator – Photos, weather, maps – Games, eBooks – Tablet applications • Total Apps Number: – Over 800,000 Apps available on Google Play (2013 May) – Around 850,000 mobile apps in the Apple App Store (2013 May) Evolution of Mobile Applications Page 14 Understanding of Mobile App and Its Development Life Cycle
  • 15. Difference between Mobile Web and Mobile App What is a Mobile Web? • Similar to any other website, designed for the smaller handheld display and touch-screen interface • Linked and accessed over the Internet through mobile device’s web browser What is a Native App? • A native mobile app is installed directly onto the device • Download and install through an online store or marketplace for a given operating system. Page 15 Understanding of Mobile App and Its Development Life Cycle
  • 16. Difference between Mobile Web and Mobile App Mobile Web Mobile App Storage of application In server side Download and install to the mobile device Activation of application Access through mobile browser Directly access by clicking the icon Require user to install any application No Yes Data traffic over network More Less Integration with phone specific features No Yes User experience Normal Richer Page 16 Understanding of Mobile App and Its Development Life Cycle
  • 17. Difference between Mobile Web and Mobile App Mobile Web Mobile App OS dependence Low High Development effort Less More Application Update Only on server side Users are required to download and install a new version Maintenance and support effort Less More Page 17 Understanding of Mobile App and Its Development Life Cycle
  • 19. • Development Kit for some of the popular platforms: Overview of Development Platforms for Mobile App Development iOS Android BlackBerry Windows Mobile/Windows Phone Symbian iOS SDK Android SDK BlackBerry Java Development Environment (JDE) Windows Mobile – Microsoft Visual Studio 2008 Windows Phone – Windows Phone Developer Tools Qt SDK, Symbian^3 SDK Page 19 Understanding of Mobile App and Its Development Life Cycle
  • 20. • Other than SDK, each mobile platform has additional development tools for facilitating the programming. Overview of Development Platforms for Mobile App Development iOS Android BlackBerry Windows Mobile/Windows Phone Symbian Xcode IDE Android Development Tools (ADT) Plugin for Eclipse, Android Native Development Kit (NDK) BlackBerry Java Plug-in for Eclipse Visual Basic for Windows Phone Develop Tools Carbide.c++ IDE Page 20 Understanding of Mobile App and Its Development Life Cycle
  • 21. • Xcode IDE Overview of Development Platforms for Mobile App Development iPhone Simulator Page 21 Understanding of Mobile App and Its Development Life Cycle
  • 22. • Eclipse with Android SDK Overview of Development Platforms for Mobile App Development Android Emulator Page 22 Understanding of Mobile App and Its Development Life Cycle
  • 23. • Developing multiple mobile apps with single source code • Some tools use web standards for development while some need to use proprietary programming languages. • For development tools using web standards, they work in two approaches. – generate the codes as embedded web content within the mobile app (e.g. PhoneGap) – recompile the web codes into native codes (e.g. Titanium Mobile) Cross-Platform Development Tools Page 23 Understanding of Mobile App and Its Development Life Cycle
  • 24. These tools have some common limitations: • Most of the tools cannot support all common mobile OS platforms. • Although web standards are used by some of these tools, some advanced features like AJAX are not supported by tools like MotherApp. • Performance of mobile apps developed by these tools may not as good as those developed by native programming language. • Most of the tools do not provide API for interfacing with Bluetooth and video capture. Cross-Platform Development Tools Page 24 Understanding of Mobile App and Its Development Life Cycle
  • 25. PhoneGap Titanium Mobile MotherApp Rhodes Corona Company Nitobi Appcelerator MotherApp Rhomobile Ansca Product Type Open Source Open Source Proprietary Open Source Proprietary Programming Language HTML, CSS, JavaScript HTML, CSS, JavaScript MotherAPP HTML HTML, CSS, JavaScript, Ruby Lua Online Conversion Service Yes No Yes No No Development Kit Nil Titanium Studio Nil RhoStudio Corona SDK Cross-Platform Development Tools Page 25 Understanding of Mobile App and Its Development Life Cycle
  • 26. Supported Platforms Cross-Platform Development Tools PhoneGap Titanium Mobile MotherApp Rhodes Corona iOS Yes Yes Yes Yes Yes Android Yes Yes Yes Yes Yes BlackBerry Yes Yes(beta) Yes Yes No Windows Mobile Yes No No Yes No Windows Phone No No No Yes No Symbian Yes No No Yes No Others WebOS Nil Nil WebOS Nil Page 26 Understanding of Mobile App and Its Development Life Cycle
  • 30. • Diversity: OS Platforms X Hardware X Devices X Carrier Networks • Native vs. Web Applications • Functionality: Talking, Gaming, Browsing, Listening, Business, Communication • User Experience: Installation, Usability, Connectivity, Data Usage etc Challenges involved in Mobile Application Testing
  • 32. • Integration with existing Systems • Accelerated Development • Performance & Security • Backward Compatibility Challenges
  • 33. Customers Challenges in Mobile Testing • Variety of mobile devices in market and multiple manufacturers • Coping with the short lifestyle of the mobile application in market • Huge variety of hardware capabilities • Shorter duration of device life in the market • Variety of network models like 2G/3G/4G/Wi-Fi • Huge investment and high time frame to set up an test lab • Most of the tools are image based comparison tool • One test tool may not support all platforms versions • Testing on latest technologies like HTML5, NFC, etc. • High rise of localized app capability • Choice between simulators and real devices for testing
  • 34. • Test the application with different models if possible • Conduct testing on different connection speeds – GPRS for low connection speed and – 3G/HSPA/Wi-Fi for high connection speed. • Conduct testing in new mobile OS version when a new mobile OS version upgrades. • Make sure that the application has undergone full testing with bug-free before submitting to a mobile application store. Testing Strategy for Mobile App Page 34 Understanding of Mobile App and Its Development Life Cycle
  • 35. • Quick swipe (user experience, quit app scenarios) • Orientation • Different devices (resolutions, compatibility) • No network scenario • Features Test (esp. cross app cases) • Stress Test (including server side) Testing Strategy for Mobile App Page 35 Understanding of Mobile App and Its Development Life Cycle
  • 37. • Mobile emulator provides an easy way for testing the application without the needs of actual device. • Emulator cannot perform some hardware related testing – onboard camera – GPS, – sensors, – multitouch, – telephony, – accelerometer feedback • Testing with actual device must be conducted before the application is released. Testing Strategy for Mobile App Page 37 Understanding of Mobile App and Its Development Life Cycle
  • 38.
  • 40. Some Popular Mobile Testing Tools
  • 41. Mobile Automation – Desktop Based • Mobile test automation tools are installed on a desktop locally • Interacts with the mobile devices Through USB connection or Wi-Fi • Mobile Apps can be installed & tested on both Emulators and real devices
  • 42. Mobile Automation - Image vs Object Recognition
  • 43. Mobile Automation – Desktop Based
  • 44. Comparison of Mobile Test Tools in Market
  • 45. • Stable Automation Framework useful across multiple Platforms • Use Emulators for Automation early in the development cycle • Use Real device for automation only to emulate real time usage When to plan Automation?
  • 46. 1. Define the automation scope 2. Select the Test Automation Tool suitable for your application and supports multiple Oss 3. Start by building automation scripts for smoke testing 4. Gradually build a basic test suite for regression testing that represents business critical use cases How to implement Automation Tools?
  • 48. • MonkeyTalk supports both iOS and Android mobile application for automation MonkeyTalk Application APK File Android Emulator MonkeyTalk IDE MonkeyTalk TestScript Eclipse IDE with AspectJ Plug-in Android SDK
  • 49. • Selenium supports iOS and Android mobile applications for automation Selenium for Mobile Eclipse IDE Selenium WebDriver Android Emulator Selenium TestScript Android SDK
  • 50. • Supports Android applications for Auotmation • Robotium RC can be utilized to run testscripts in a Test Lab setup Robotium
  • 51. Mobile Testing – Infrastructure Options
  • 54. Mobile Infrastructure – Device Selection
  • 56. Mobile Testing Approaches - Infrastructure
  • 57. • Test Early and Often • Create matrix of Platforms, Device, Network Connections (2G, 3G, wi-fi, LTE, etc.), Carriers for Testing (Including different OS versions) • Test for Performance and Security • Keep Target Audience in mind while testing • Tool selection should take into account emulator and real device support across platfomrs Best Practices
  • 59. • iPhone and Android phone apps for the Campaign on 1911 Revolution • With Augmented Reality (AR) and interactive user experience • Guide users on a virtual journey through 30 designated spots related to the history of the 1911 Revolution and Dr Sun Yat-sen in Hong Kong. Where is Dr. Sun? 搜尋孫中山
  • 60. Augmented Reality (AR) • 30 check points with GPS locating function. • Take photos with the stamp • To ensure the function goes well, Crossover did the site visit both individually and with the client. Where is Dr. Sun? 搜尋孫中山
  • 61. Q&A and Badges Collection • Answer the multiple choice questions for each checkpoint and earn a badge • Get the Final Badge within a specific area Where is Dr. Sun? 搜尋孫中山
  • 62. -END-