SlideShare a Scribd company logo
1 of 51
Download to read offline
Trends and accentuations around
   mobile application testing

        eranki@matrix.co.il
Agenda
- Testing challenges
- Existing mobile Operating systems
- Mobile applications testing
- Porting
- Testing tools
- Real life examples
- Trends and accentuations in the mobile world
- Q&A
Testing Challenges
Device battery consumption
Device memory constrains
Screen size/resolution, Touch screen
Form factors (Slider, Clamshell, Block, etc.)
Performance of the device
Fragmentation among device OS’s
Price of defects
Testing Challenges - Continue
Security element in device testing (Apple UDID’s,
prompts for unsigned apps etc.)
Incoming events during testing, Coex testing
(Combinations, complex scenario’s, launch camera etc.)
Signal strength
Back/Exit buttons behavior among devices
Installation method (OTA, Serial cable, SDK’s)
Device Access point configuration
Various OS versions compliance
Various languages/locales
Mobile devices operating systems – Trends
        (Gartner, September 2010)
Existing mobile Operating systems

• Symbian (Nokia)
• iOS (Apple)
• Android (Google)
• Blackberry OS (RIM)
• Windows Phone 7 (Microsoft)
• J2ME proprietary OS (SE/Samsung/LG) ?
• Palm/WebOS (Palm Pre) ?
  http://www.calcalist.co.il/internet/articles/0,7340,L
  -3519738,00.html)
Symbian OS
•   Symbian OS was originally developed by Symbian Ltd, which in 2008 was acquired
    by Nokia.

•   Symbian OS had almost no UI Layer, Most UI design was made by third parties
     –   S60 by Nokia
     –   UIQ by SonyEricsson
     –   MOAP by NTT DoCoMo


•   In 2008 with Nokia acquiring Symbian Ltd. the Symbian Foundation was created and
    the three UIs were contributed to it in order to create a Unified Symbian Platform.
Symbian OS - Continue
•   Today two streams of Symbian UIs are available.
      –   Symbian^3 is used by Nokia’s High-end smartphones.

      –   S60 is used in Mid-Range smartphones.

•   It contains associated libraries, user interface, frameworks and reference implementations of
    common tools.
•   Symbian runs on ARM processors (x86 unofficial).
•   Symbian applications are packed in SISX files and requires Symbian Signed certificate to be
    commercially deployed on a handset.
•   SEMC recently announced that it is deserting Symbian OS to switch to the more popular OS’s –
    Android & Windows Phone 7
•   Nokia recently announced that it is also deserting Symbian and is about to move to Windows
    Phone 7/8 OS for its future devices.
•   Note: NTT DocoMo and Fujitsu announced a new Tablet/Smartphone running Windows 7 OS
    (Tablet) and Symbian (Mobile) on one platform (Details)
Android OS
• Android is a mobile operating system developed by Google and is based upon a
  modified version of the Linux kernel. It was initially developed by Android Inc. (a firm
  purchased by Google)

• Its OS versions are usually incremented alphabetically and named upon famous
  cookies/cakes
    •   1.5 cupcake
    •   1.6 donut
    •   2.0 éclair
    •   2.2 Froyo
    •   2.3 Gingerbread
    •   3.0 Honeycomb
    •   ? IceCream


• What is ADB ?
Android SDK Emulator
Android – Screen resolution method

• In Android, Google developed a new way of handling different screen
  resolutions, in order to save porting time of applications among various of
  Android phones
     •   Basically Android OS divides its screen size to 4 different sizes and 4 different densities and
         the platform transparently handles the rendering of the layouts at the actual screen size
           •   Small, Normal, Large and Extra Large
           •   ldpi (low), mdpi (medium), hdpi (high), and xhdpi (extra high)

• Detail explanation of how it’s done can be found in a post at TACT/Blogix
  web page: http://qa.blogix.co.il/2011/04/16/%D7%90%D7%99%D7%9A-
   %D7%9E%D7%A2%D7%A8%D7%9B%D7%AA-
   %D7%94%D7%94%D7%A4%D7%A2%D7%9C%D7%94-
   %D7%90%D7%A0%D7%93%D7%A8%D7%95%D7%90%D7%99%D7%93-
   %D7%93%D7%95%D7%90%D7%92%D7%AA-
   %D7%9C%D7%94%D7%A6%D7%92%D7%94/
• Top rated Android apps for 2011 - http://www.web-designers-directory.org/articles/top-
   rated-android-applications-for-2011-20.html
Blackberry OS
•   BlackBerry OS is a proprietary mobile operating system, developed by
    Research In Motion for its BlackBerry line of smart phone handheld devices.
•   BlackBerry applications are developed in Java with RIM’s SDK
•   The operating system provides multi-tasking, server-side push service and
    supports specialized input devices:
     •   trackwheel (7100i, OS 4.1.0)
     •   trackball (9630 Tour, OS 5.0)
     •   trackpad (9780 Bold, OS 6.0)
     •   touchscreen (9800 Torch, OS 6.0).
• BlackBerry Various Emulators for testing - Download
Apple iOS
•   iOS formerly known as iPhone OS is Apple’s proprietary mobile operating
    system. Developed originally for the iPhone, it has since been shipped on the
    iPod Touch and iPad as well.
     •   iOS 1.0 – iPhone
     •   iOS 2.0 – iPhone 3G
     •   iOS 3.0 – iPhone 3Gs
     •   iOS 4.0 – iPhone 4
•   iOS 4.3.3 was released on 5-May, 2011 and is the version used on latest
    iPhone 4 devices
•   MAC OS tools:
     •   Xcode, Interface Builder, iPhone Simulator
Apple iOS - Continue
•   There are few free tools which can allow a developer to develop/test his application for iPhone:
     •    For Windows OS there are:
           •    AirPlay       https://www.airplaysdk.com/downloadsall.php
                 •        C:Airplay SDK4.4examplesgameskartz

           •    Titanium        http://www.appcelerator.com/products/download/ (JavaScript developing for iPhone, Android)

           •    Mono Touch            Develop Android and iPhone apps with C# on windows - not free (http://www.go-mono.com/mono-
                downloads/download.html (http://mono-tools.com/download/)

     •    For MAC OS               iPhone SDK (Xcode) provided by Apple with full development environment (C++ or
          Objective C languages)

•   Top 10 iPhone apps by TIME magazine:
    http://www.time.com/time/specials/packages/completelist/0,29569,2044480,00.html

•   Xcode Demo’s

     •   http://www.youtube.com/watch?v=miIBUq4mGSw

     •   http://www.youtube.com/watch?v=y5XYKl3iHDM&feature=relmfu
Apple iOS – Dev. & Testing
Windows Mobile
•   Windows Mobile is a mobile operating system developed by Microsoft for use
    in smart phones (non-touch) and PPC (touch) devices.
•   WM features a suite of basic applications developed using the Microsoft
    Windows API. It is designed to be somewhat similar to desktop versions of
    Windows, feature-wise and aesthetically. Additionally, third-party software
    can be purchased via the Windows Marketplace
•   The OS is now obsolete and The Last version is "Windows Mobile 6.5.3“
    (based on the Windows CE 5.2 kernel)

    • Sample devices:
       •   HTC HD2
       •   Sony Ericsson XPERIA X2
Windows Phone 7
•   Windows Phone 7 is the successor to Microsoft'Windows Mobile platform
                                                 s
    (based on Windows CE 6.0 R3 kernel).
•   Windows phone 7 is built from the ground up and features no backward
    compatibility to the previous 6.5 version.
     – Does require certification and signing of app to be publicly deployed
•   Some of the features are
     –   Live Tiles,
     –   Social networking integration,
     –   multi-touch Support,
     –   internet explorer mobile,
     –   Office 2010 Mobile,
     –   Search & Maps using Bing,
     –   Xbox live gaming
     –   Metro UI L&F
(http://www.microsoft.com/windowsphone/en-us/default.aspx)
Windows Phone 7 – Dev. & Testing
Windows Phone 7 development tools are distributed free by Microsoft.
Important and up to date data is constantly updated at http://blogs.microsoft.co.il/blogs/msdn/

•    Windows Phone Developer Tools http://www.microsoft.com/express/Downloads/#2010-Visual-Phone

•    Expression Blend is a more user friendly application used to design only the User Interface
     Experience

•    There is a newly developed application market for windows phone 7 platform App Hub
     http://create.msdn.com/en-US/
      •   Preliminary application market for Israel (Yalla Apps - http://www.yallaapps.com/ )

•    A training kit for Windows Phone 7 new comers can be obtained from http://msdn.microsoft.com/en-
     us/wp7trainingcourse.aspx

 Zune Sync music and video for WP7 devices
**

• Note: The tools above require Windows 7 to be installed
Windows Phone 7 – Dev. & Testing Visual
        Studio Express 2010
Windows Phone 7 – Expression Blend 4
Rapid Prototyping without writing code
Windows Phone 7 – Expression Blend 4
Rapid Prototyping without writing code
Windows Phone 7 & SilverLight


•   Short demo
    http://isvis.com/work/silverlight/3d/tracking/
•   Silverlight is the application development platform for Windows Phone 7.
•   Silverlight for Windows Phone supports core Silverlight capabilities in
    managed .NET code with XAML including:
     – High quality video and audio using a wide range of codecs, DRM and IIS
        Smooth Streaming
     – Deep Zoom for enhanced reading and photo browsing experiences
     – Vector and Bitmap Graphics and animation
• Note: In order to deploy your app on a real phone, the phone
  must be registered within MSFT (Emulator is the preferred
  preliminary way of testing)
Windows Phone 7 & SilverLight


•   Silverlight can also access the unique capabilities of the phone including:
     – Hardware acceleration for video and graphics
     – Accelerometer for motion sensing
     – Multi-touch
     – Camera and microphone
     – Location awareness
     – Push notifications
     – Native phone functionality
•   Silverlight can also utilize the XNA Framework for Audio capture and playback,
    Media Library Access, and even accessing Xbox LIVE.
•   Currently Windows Phone 7 uses silverlight 3.0, soon silverlight 4.0 with additional
    features will be released as part of the next MSFT SDK (MANGO)
•   Tombstone Vs. Dormant (MANGO Release)
Windows Phone 7 Demos
Windows Phone 7 Leading Phones


 Samsung Focus - http://www.microsoft.com/windowsphone/en-
us/buy/7/phones.aspx?id=1536&id=1536#detail=1536
 HTC Arrive - http://www.microsoft.com/windowsphone/en-
us/buy/7/phones.aspx?id=1536&id=1536#detail=1684
 HTC HD7 - http://www.microsoft.com/windowsphone/en-
us/buy/7/phones.aspx?id=1536&id=1536#detail=1569
 LG Quantum - http://www.microsoft.com/windowsphone/en-
us/buy/7/phones.aspx?id=1536&id=1536#detail=1537
 HTC Surround - http://www.microsoft.com/windowsphone/en-
us/buy/7/phones.aspx?id=1536&id=1536#detail=1538
 Dell Venue Pro - http://www.microsoft.com/windowsphone/en-
us/buy/7/phones.aspx?id=1536&id=1536#detail=1568
Mobile Application Testing - Methodologies


•   The testing methodology mostly depends on the type of application.
•   There are 3 main mobile applications:
       1) Stand alone Taking into account the mobile phone limitations, such
       applications shall be tested by Functional tests, Usability tests,
       performance tests.
       2) Distributed Testing for both client and server side alone and together
       is required (e.g- Instant messaging application)
Mobile Application Testing - Methodologies

3) Web based In a Web-based application the client is an Internet browser,
and the main functionality is built on the server-side. Testing Web based
applications require the following type of testing:
 • Functional testing
 • Compatibility testing
 • Content testing
 • Performance testing
 • Load testing
 • Security testing
 • Server-side testing (Web server, application
 server)
 • Database testing
Mobile Application Testing – Proposed strategy


•    Do invest in a device emulator
      – It’s a well instrumented testing environment, usually more than 1 skin
      – Cost effective
      – Bypasses real network
      – Easy to debug
•    Take advantage of a real remote device solution (Nokia, Device Anywhere,
     Perfectomobile)
      – “Hire” target device/s per hour to perform real device testing as needed
•    Don’t completely avoid testing on real device on real network

Conclusion: Seek a solution which combines remote manual testing on real
  device, emulated device testing and automation tests wherever possible.
Mobile Application Testing – Porting Concepts
                    1 of 3

 Since there are variety of devices from each OEM, each has different
 constraints (Memory, screen size, heap size, form factor, camera, touch
 screen, installation path etc.) – it is a must to plan the application to be as
 much portable as possible during the design phases.
  Not taking into account the devices family and the above constrains will
 require massive porting and long development cycles when starting the
 deployment
  Having configurable pre-compiled options which vary between devices
 would ease the porting and enable to use the same code (Mostly) for all
 devices, with only per device configuration options
Mobile Application Testing – Porting Concepts
                    2 of 3

 Having more than one “gold” target device during development phase is also
 an important requirement
  Using automation solution as mentioned earlier and SDK’s is also an
 advantage.
  There are special application which can provide quite easily the list of
 supported features per device (TasePhone Java application e.g.)
  Using emulation environments per device is cheap and cost effective during
 development
  Taking into account the resources used by the application is important (there
 are tools who can shrink the entire folder of resources into a small size file
 which can be used by the application – BoomFs)
Mobile Application Testing – Porting Concepts
                    3 of 3
 When a new or pre-launched phone should be supported by the application
 developers there are few things which should be taken into account:
     Phone characteristics (Screen size, OS, memory, form factor, supported features
    such as camera and others) Can be retrieved for most phones through GSM
    Arena site
     How close the phone is to the lead device within a family which is already
    supported
     If the phone represents a new family this might have implications on the porting
    time in opposed to a new member to an existing family
     Is there a way to upgrade phone OS to overcome firmware defects (Cables,
    contact with the OEM etc.)
     It would always be good to have at least 2 devices from this kind to be able to
    reproduce defects, compare performance and firmwares.
    How the application works in comparison to other apps on the device (Closing
    method, events reaction and more)
Mobile Application Testing – Bug Trackers

•   There are few free/cheap tools (Clients) which can be installed on your
    mobile device and allow you to submit bugs on the fly as you test your
    application
     – JIRA Mobile client for Android Beta (and soon iPhone)
       http://blogs.atlassian.com/jira/2010/05/jira-android-bug-tracking-mobile-phone-
       device-20100520b.html
     – FogBugs       https://www.fogcreek.com/fogbugz/mobile/
         • Supports iPhone, Android, Blackberry
Mobile Application Testing – Battery
                    Consumption
•   As mentioned earlier, the battery of the mobile phone is limited and the application
    developers must take into account the application battery usage, performance and
    take relevant steps and optimizations in order to assure that the application
    consumes the minimal battery resources as needed
     – There are monitoring tools which can be used to check the battery usage (Not always
       specific per application but this can be narrowed to the specific application vendor
       needs)
            For iPhone
                  Battery Life Pro http://itunes.apple.com/us/app/battery-life-pro-all-in-1/id373041141?mt=8
                  Battery Led
Mobile Application Testing – Battery
             Consumption - Continue

• For Android OS there is e.g. the ‘Power Tutor’ tool
   – http://gigaom.com/mobile/android-power-consumption-app/

• For windows Mobile
   – http://www.freewarepocketpc.net/ppc-download-wr-tools-resinfo.html
Mobile Application Testing – Leading
             automation tools

There are 2-3 main players in the device test automation world
with proven results and ROI
   Perfectomobile
   http://perfectomobile.com/?key=adwords2&gclid=CM_G0eWipaQCFR5
   N5QodNUXJ6w
      Remote Access -
      http://perfectomobile.com/portal/cms/Products/Web_Access_To_Real_Handsets.html?k
      ey=adwords2
      Automation -
      http://perfectomobile.com/portal/cms/Products/automated_testing.html?key=adwords2
Mobile Application Testing – PerfectoMobile
Mobile Application Testing – Leading
              automation tools

Device Anywhere - http://www.deviceanywhere.com/mobile-application-
testing-overview.html
Mobile Application Testing – Device Anywhere
Mobile Application Testing – Leading
                 automation tools/SDK’s

•   Experitest - http://experitest.com/
     •   Provides Emulator and real device automation solution (Record/replay and code generation)
     •   Supports the following OS:
           •   Android
           •   iOS
           •   Blackberry
           •   Windows Mobile
           •   Symbian
     •   Exports code to    C#, Java, Python, QTP-VBScript, Perl


•   Robotium - http://code.google.com/p/robotium/
     •   robust automatic black-box test cases for Android applications (Run your application as an
         Android Junit test on Android SDK emulator)
Mobile Application Testing – Experitest
Mobile Application Testing – Experitest
Mobile Application Testing – SDK’s &
                   Emulator’s

 In order to test application developed for mobile, often the vendors would prefer to
use as many devices SDK’s and Emulators to get as close to reality L&F and
functionality before deploying first on device which has limited debugging capabilities
in opposed to the SDK’s
Few SDK’s which are free to use
     NetBNeans IDE which has simple integration for most common OEM SDK’s (Motorola, Nokia, SEMC)
    - http://netbeans.org
     Nokia specific Emulation environment -
    http://www.forum.nokia.com/Library/Tools_and_downloads/Archive.xhtml
     SEMC specific Emulation environment
       1) http://developer.sonyericsson.com/wportal/devworld/technology/android/developer-tools
       2) http://developer.sonyericsson.com/wportal/devworld/technology/windows-mobile/xperia-x2
     Motorola specific Emulation environment -
    http://developer.motorola.com/docstools/sdks/archive/c975ADK/
     Sun Java Wirelsss Toolkit (J2ME SDK for application developers) -
    http://java.sun.com/products/sjwtoolkit/download-2_5_1.html
Mobile Application Testing – SDK’s &
                  Emulator’s

J2ME
    Sun Java Wireless SDK -
   http://www.oracle.com/technetwork/java/download-135801.html
   (Emulation/debugging environment)
    NetBeans SDK – IDE with OEM SDK’s plug in integration for pre-device
   testing and debugging
    Mobile Junit by SEMC
    Jbenchmark (http://www.jbenchmark.com/tools.jsp)
    LG -
   http://developer.lgmobile.com/lge.mdn.tnd.RetrieveDocAndTools.dev?object
   Type=T#1
   Samsung -
   http://innovator.samsungmobile.com/down/cnts/toolSDK.detail.view.do?platf
   ormId=1&cntsId=9460
Mobile Application Testing – SDK’s &
                  Emulator’s

Symbian
    Symbian signed pre-certification tools
   (http://developer.symbian.org/wiki/index.php/Symbian_Signed_Tools)
 Windows Mobile (I assume it will be EOL’d in the near future due to Windows
Phone 7 platform)
    Test Complete (Allows connection from device to Microsoft
   ‘ActiveSync’/’Windows Mobile device center Synchronization’ SW).
   http://www.automatedqa.com/products/testcomplete/testing-pda-apps/
    Windows mobile emulators -
   http://www.microsoft.com/downloads/en/details.aspx?FamilyID=38c46aa8-
   1dd7-426f-a913-4f370a65a582&DisplayLang=en
Real Life Experience overview


Driver and Firmware for WLAN/BT/GPS testing on mobile platform running
Android/Linux (IOP testing)

Android SDK – Use Android SDK to pre-test your application on a variety of
Emulators (Uses the latest open source file system)
   Google CTS
   ADB Shell
Mobile Trends and Forecast

Mobile Devices Begin to Replace Credit Cards
2011 looks like the year when, in some countries at least, using
your phone as a credit card for lower value purchases will
become a reality. Google recently announced that NFC (Near
Field Communication) technology will be supported in the next
release of Android – 2.3 or “Gingerbread”;
   HTC Flyer phone announced to support NFC within a year
Social networking based devices (Recently HTC announced that
they launched social networking specific devices - ChaCha and
Salsa)
Mobile Trends and Forecast - Continue

Smartphones invading the enterprise (Security threats will be big factors in
determining which companies aggressively deploy smartphones)

Mobile OS battles will continue (Android will become the leading Smartphone
platform for at least the next four years, according to the latest data from IDC. The
analyst firm estimates that Android will account for 45 per cent of the global
Smartphone market by 2015, up from under 40 per cent today (30-Mar-11). RIM and
iOS will see more modest growth and a slight fall in overall market share to around 15
per cent

Smartphone and tablet convergence (growing number of Smartphone manufacturers
will feel pressured to introduce tablet computers, and will likely do so this year.
Offering one but not the other will become an intensifying threat to their businesses)
Mobile Trends and Forecast - Continue

Cloud in Mobile – Apple set to launch cloud-based music service
ahead of Google (In this model, people can upload and store all
their music to Apple servers, and launch it from any device or
share it with other users (Using an iTunes account)).
   Apple cuts Amazon & Google by signing the music companies
Applications Store Ranking
Appendix A – Sample certifications

Symbian Signed certification – Mandatory for any S60 V3 application which is
intended for commercial launch https://www.symbiansigned.com/app/page
 Java Verified Certification – Sun’s guidelines for Java/Java ME compliant
applications http://javaverified.com
 Windows Mobile application signing - http://msdn.microsoft.com/en-
us/windowsmobile/dd569132.aspx & Windows Phone 7 Certification
 JSR TCK tests – Specific JSR compatibility tests which are mandatory to any JSR
OEM implementer - https://jtharness.dev.java.net/ (open source test harness) – For a
complete list of JSR’s see
http://www.jcp.org/en/jsr/platform?listBy=1&listByType=platform
 Java Device test framework – specific JSR test suite with functional tests (Provided
to reduce fragmentation and increase quality -
http://java.sun.com/products/javadevice/index.jsp & https://jdtf.dev.java.net)
052-2424314
ryonish@tact.co.il

More Related Content

What's hot

android vs symbian
android  vs symbianandroid  vs symbian
android vs symbianAJAL A J
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systemsSriram PV
 
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...DEVCON
 
MOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMMOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMcool192
 
Operating Systems in Mobile Phones
Operating Systems in Mobile PhonesOperating Systems in Mobile Phones
Operating Systems in Mobile PhonesSasukeJUchiha
 
Seminar on mobile os
Seminar on mobile osSeminar on mobile os
Seminar on mobile osabani12
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating SystemsAndreas Jakl
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating SystemSonal Poddar
 
889448 634356855122132416
889448 634356855122132416889448 634356855122132416
889448 634356855122132416zxdrtyu
 
Android os(comparison all other mobile os)
Android os(comparison all other mobile os)Android os(comparison all other mobile os)
Android os(comparison all other mobile os)DivyaKS12
 
Development of Mobile Application -PPT
Development of Mobile Application -PPTDevelopment of Mobile Application -PPT
Development of Mobile Application -PPTDhivya T
 
Android : a linux-based mobile operating system
Android : a linux-based mobile operating systemAndroid : a linux-based mobile operating system
Android : a linux-based mobile operating systemClément Escoffier
 
Android : Evolution or Revolution
Android : Evolution or RevolutionAndroid : Evolution or Revolution
Android : Evolution or RevolutionSanjiv Malik
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating SystemsDasun Hegoda
 
Layer architecture of ios (1)
Layer architecture of ios (1)Layer architecture of ios (1)
Layer architecture of ios (1)dwipalp
 
Introduction to iOS Development
Introduction to iOS DevelopmentIntroduction to iOS Development
Introduction to iOS DevelopmentAsim Rais Siddiqui
 

What's hot (20)

android vs symbian
android  vs symbianandroid  vs symbian
android vs symbian
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to Android
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systems
 
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
 
MOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMMOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEM
 
Operating Systems in Mobile Phones
Operating Systems in Mobile PhonesOperating Systems in Mobile Phones
Operating Systems in Mobile Phones
 
Seminar on mobile os
Seminar on mobile osSeminar on mobile os
Seminar on mobile os
 
Mobile technologies
Mobile technologiesMobile technologies
Mobile technologies
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating Systems
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating System
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating System
 
889448 634356855122132416
889448 634356855122132416889448 634356855122132416
889448 634356855122132416
 
Android os(comparison all other mobile os)
Android os(comparison all other mobile os)Android os(comparison all other mobile os)
Android os(comparison all other mobile os)
 
Development of Mobile Application -PPT
Development of Mobile Application -PPTDevelopment of Mobile Application -PPT
Development of Mobile Application -PPT
 
Android : a linux-based mobile operating system
Android : a linux-based mobile operating systemAndroid : a linux-based mobile operating system
Android : a linux-based mobile operating system
 
Android : Evolution or Revolution
Android : Evolution or RevolutionAndroid : Evolution or Revolution
Android : Evolution or Revolution
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating Systems
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
Layer architecture of ios (1)
Layer architecture of ios (1)Layer architecture of ios (1)
Layer architecture of ios (1)
 
Introduction to iOS Development
Introduction to iOS DevelopmentIntroduction to iOS Development
Introduction to iOS Development
 

Viewers also liked

Viewers also liked (6)

Republic of cuba by Olivia
Republic of cuba by OliviaRepublic of cuba by Olivia
Republic of cuba by Olivia
 
To Test or Not to Test?
To Test or Not to Test?To Test or Not to Test?
To Test or Not to Test?
 
America
AmericaAmerica
America
 
Jugando con websockets en nodeJS
Jugando con websockets en nodeJSJugando con websockets en nodeJS
Jugando con websockets en nodeJS
 
Cofty to china
Cofty to chinaCofty to china
Cofty to china
 
GeekCampSG - Nodejs , Websockets and Realtime Web
GeekCampSG - Nodejs , Websockets and Realtime WebGeekCampSG - Nodejs , Websockets and Realtime Web
GeekCampSG - Nodejs , Websockets and Realtime Web
 

Similar to Qa extreme 2011 eran kinsbruner

IT6601 Mobile Computing Unit V
IT6601 Mobile Computing Unit VIT6601 Mobile Computing Unit V
IT6601 Mobile Computing Unit Vpkaviya
 
developementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxdevelopementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxPoooi2
 
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
 
1319571 634635606205391250
1319571 6346356062053912501319571 634635606205391250
1319571 634635606205391250MadNor Exe
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versionsindiangarg
 
Introduction to Android Programming
Introduction to Android ProgrammingIntroduction to Android Programming
Introduction to Android Programming'Zamin Mammadov
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapNick Landry
 
MobApp development 01 application platform.pptx
MobApp development 01 application platform.pptxMobApp development 01 application platform.pptx
MobApp development 01 application platform.pptxsanaiftikhar23
 
Mobile os and their types by shakir
Mobile os and their types by shakirMobile os and their types by shakir
Mobile os and their types by shakirShakir Memon
 
Sinergija 12 WP8 is around the corner
Sinergija 12 WP8 is around the cornerSinergija 12 WP8 is around the corner
Sinergija 12 WP8 is around the cornerCatalin Gheorghiu
 
Dia 1 intro to mobile and xamarin
Dia 1   intro to mobile and xamarinDia 1   intro to mobile and xamarin
Dia 1 intro to mobile and xamarinHernan Zaldivar
 

Similar to Qa extreme 2011 eran kinsbruner (20)

IT6601 Mobile Computing Unit V
IT6601 Mobile Computing Unit VIT6601 Mobile Computing Unit V
IT6601 Mobile Computing Unit V
 
developementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxdevelopementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptx
 
MATHS
MATHSMATHS
MATHS
 
Android introduction
Android introductionAndroid introduction
Android introduction
 
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...
 
1319571 634635606205391250
1319571 6346356062053912501319571 634635606205391250
1319571 634635606205391250
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versions
 
Introduction to Android Programming
Introduction to Android ProgrammingIntroduction to Android Programming
Introduction to Android Programming
 
Android introduction
Android introductionAndroid introduction
Android introduction
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
 
MobApp development 01 application platform.pptx
MobApp development 01 application platform.pptxMobApp development 01 application platform.pptx
MobApp development 01 application platform.pptx
 
Aandroid
AandroidAandroid
Aandroid
 
Mobile os and their types by shakir
Mobile os and their types by shakirMobile os and their types by shakir
Mobile os and their types by shakir
 
Adobe Flash and Device Central
Adobe Flash and Device CentralAdobe Flash and Device Central
Adobe Flash and Device Central
 
android
androidandroid
android
 
Sinergija 12 WP8 is around the corner
Sinergija 12 WP8 is around the cornerSinergija 12 WP8 is around the corner
Sinergija 12 WP8 is around the corner
 
Windows Phone Introduction
Windows Phone IntroductionWindows Phone Introduction
Windows Phone Introduction
 
Android
AndroidAndroid
Android
 
Google android os
Google android osGoogle android os
Google android os
 
Dia 1 intro to mobile and xamarin
Dia 1   intro to mobile and xamarinDia 1   intro to mobile and xamarin
Dia 1 intro to mobile and xamarin
 

Recently uploaded

"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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
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
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
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
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 

Recently uploaded (20)

"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
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
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
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
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
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 

Qa extreme 2011 eran kinsbruner

  • 1. Trends and accentuations around mobile application testing eranki@matrix.co.il
  • 2. Agenda - Testing challenges - Existing mobile Operating systems - Mobile applications testing - Porting - Testing tools - Real life examples - Trends and accentuations in the mobile world - Q&A
  • 3. Testing Challenges Device battery consumption Device memory constrains Screen size/resolution, Touch screen Form factors (Slider, Clamshell, Block, etc.) Performance of the device Fragmentation among device OS’s Price of defects
  • 4. Testing Challenges - Continue Security element in device testing (Apple UDID’s, prompts for unsigned apps etc.) Incoming events during testing, Coex testing (Combinations, complex scenario’s, launch camera etc.) Signal strength Back/Exit buttons behavior among devices Installation method (OTA, Serial cable, SDK’s) Device Access point configuration Various OS versions compliance Various languages/locales
  • 5. Mobile devices operating systems – Trends (Gartner, September 2010)
  • 6. Existing mobile Operating systems • Symbian (Nokia) • iOS (Apple) • Android (Google) • Blackberry OS (RIM) • Windows Phone 7 (Microsoft) • J2ME proprietary OS (SE/Samsung/LG) ? • Palm/WebOS (Palm Pre) ? http://www.calcalist.co.il/internet/articles/0,7340,L -3519738,00.html)
  • 7. Symbian OS • Symbian OS was originally developed by Symbian Ltd, which in 2008 was acquired by Nokia. • Symbian OS had almost no UI Layer, Most UI design was made by third parties – S60 by Nokia – UIQ by SonyEricsson – MOAP by NTT DoCoMo • In 2008 with Nokia acquiring Symbian Ltd. the Symbian Foundation was created and the three UIs were contributed to it in order to create a Unified Symbian Platform.
  • 8. Symbian OS - Continue • Today two streams of Symbian UIs are available. – Symbian^3 is used by Nokia’s High-end smartphones. – S60 is used in Mid-Range smartphones. • It contains associated libraries, user interface, frameworks and reference implementations of common tools. • Symbian runs on ARM processors (x86 unofficial). • Symbian applications are packed in SISX files and requires Symbian Signed certificate to be commercially deployed on a handset. • SEMC recently announced that it is deserting Symbian OS to switch to the more popular OS’s – Android & Windows Phone 7 • Nokia recently announced that it is also deserting Symbian and is about to move to Windows Phone 7/8 OS for its future devices. • Note: NTT DocoMo and Fujitsu announced a new Tablet/Smartphone running Windows 7 OS (Tablet) and Symbian (Mobile) on one platform (Details)
  • 9. Android OS • Android is a mobile operating system developed by Google and is based upon a modified version of the Linux kernel. It was initially developed by Android Inc. (a firm purchased by Google) • Its OS versions are usually incremented alphabetically and named upon famous cookies/cakes • 1.5 cupcake • 1.6 donut • 2.0 éclair • 2.2 Froyo • 2.3 Gingerbread • 3.0 Honeycomb • ? IceCream • What is ADB ?
  • 11. Android – Screen resolution method • In Android, Google developed a new way of handling different screen resolutions, in order to save porting time of applications among various of Android phones • Basically Android OS divides its screen size to 4 different sizes and 4 different densities and the platform transparently handles the rendering of the layouts at the actual screen size • Small, Normal, Large and Extra Large • ldpi (low), mdpi (medium), hdpi (high), and xhdpi (extra high) • Detail explanation of how it’s done can be found in a post at TACT/Blogix web page: http://qa.blogix.co.il/2011/04/16/%D7%90%D7%99%D7%9A- %D7%9E%D7%A2%D7%A8%D7%9B%D7%AA- %D7%94%D7%94%D7%A4%D7%A2%D7%9C%D7%94- %D7%90%D7%A0%D7%93%D7%A8%D7%95%D7%90%D7%99%D7%93- %D7%93%D7%95%D7%90%D7%92%D7%AA- %D7%9C%D7%94%D7%A6%D7%92%D7%94/ • Top rated Android apps for 2011 - http://www.web-designers-directory.org/articles/top- rated-android-applications-for-2011-20.html
  • 12. Blackberry OS • BlackBerry OS is a proprietary mobile operating system, developed by Research In Motion for its BlackBerry line of smart phone handheld devices. • BlackBerry applications are developed in Java with RIM’s SDK • The operating system provides multi-tasking, server-side push service and supports specialized input devices: • trackwheel (7100i, OS 4.1.0) • trackball (9630 Tour, OS 5.0) • trackpad (9780 Bold, OS 6.0) • touchscreen (9800 Torch, OS 6.0). • BlackBerry Various Emulators for testing - Download
  • 13. Apple iOS • iOS formerly known as iPhone OS is Apple’s proprietary mobile operating system. Developed originally for the iPhone, it has since been shipped on the iPod Touch and iPad as well. • iOS 1.0 – iPhone • iOS 2.0 – iPhone 3G • iOS 3.0 – iPhone 3Gs • iOS 4.0 – iPhone 4 • iOS 4.3.3 was released on 5-May, 2011 and is the version used on latest iPhone 4 devices • MAC OS tools: • Xcode, Interface Builder, iPhone Simulator
  • 14. Apple iOS - Continue • There are few free tools which can allow a developer to develop/test his application for iPhone: • For Windows OS there are: • AirPlay https://www.airplaysdk.com/downloadsall.php • C:Airplay SDK4.4examplesgameskartz • Titanium http://www.appcelerator.com/products/download/ (JavaScript developing for iPhone, Android) • Mono Touch Develop Android and iPhone apps with C# on windows - not free (http://www.go-mono.com/mono- downloads/download.html (http://mono-tools.com/download/) • For MAC OS iPhone SDK (Xcode) provided by Apple with full development environment (C++ or Objective C languages) • Top 10 iPhone apps by TIME magazine: http://www.time.com/time/specials/packages/completelist/0,29569,2044480,00.html • Xcode Demo’s • http://www.youtube.com/watch?v=miIBUq4mGSw • http://www.youtube.com/watch?v=y5XYKl3iHDM&feature=relmfu
  • 15. Apple iOS – Dev. & Testing
  • 16. Windows Mobile • Windows Mobile is a mobile operating system developed by Microsoft for use in smart phones (non-touch) and PPC (touch) devices. • WM features a suite of basic applications developed using the Microsoft Windows API. It is designed to be somewhat similar to desktop versions of Windows, feature-wise and aesthetically. Additionally, third-party software can be purchased via the Windows Marketplace • The OS is now obsolete and The Last version is "Windows Mobile 6.5.3“ (based on the Windows CE 5.2 kernel) • Sample devices: • HTC HD2 • Sony Ericsson XPERIA X2
  • 17. Windows Phone 7 • Windows Phone 7 is the successor to Microsoft'Windows Mobile platform s (based on Windows CE 6.0 R3 kernel). • Windows phone 7 is built from the ground up and features no backward compatibility to the previous 6.5 version. – Does require certification and signing of app to be publicly deployed • Some of the features are – Live Tiles, – Social networking integration, – multi-touch Support, – internet explorer mobile, – Office 2010 Mobile, – Search & Maps using Bing, – Xbox live gaming – Metro UI L&F (http://www.microsoft.com/windowsphone/en-us/default.aspx)
  • 18. Windows Phone 7 – Dev. & Testing Windows Phone 7 development tools are distributed free by Microsoft. Important and up to date data is constantly updated at http://blogs.microsoft.co.il/blogs/msdn/ • Windows Phone Developer Tools http://www.microsoft.com/express/Downloads/#2010-Visual-Phone • Expression Blend is a more user friendly application used to design only the User Interface Experience • There is a newly developed application market for windows phone 7 platform App Hub http://create.msdn.com/en-US/ • Preliminary application market for Israel (Yalla Apps - http://www.yallaapps.com/ ) • A training kit for Windows Phone 7 new comers can be obtained from http://msdn.microsoft.com/en- us/wp7trainingcourse.aspx Zune Sync music and video for WP7 devices ** • Note: The tools above require Windows 7 to be installed
  • 19. Windows Phone 7 – Dev. & Testing Visual Studio Express 2010
  • 20. Windows Phone 7 – Expression Blend 4 Rapid Prototyping without writing code
  • 21. Windows Phone 7 – Expression Blend 4 Rapid Prototyping without writing code
  • 22. Windows Phone 7 & SilverLight • Short demo http://isvis.com/work/silverlight/3d/tracking/ • Silverlight is the application development platform for Windows Phone 7. • Silverlight for Windows Phone supports core Silverlight capabilities in managed .NET code with XAML including: – High quality video and audio using a wide range of codecs, DRM and IIS Smooth Streaming – Deep Zoom for enhanced reading and photo browsing experiences – Vector and Bitmap Graphics and animation • Note: In order to deploy your app on a real phone, the phone must be registered within MSFT (Emulator is the preferred preliminary way of testing)
  • 23. Windows Phone 7 & SilverLight • Silverlight can also access the unique capabilities of the phone including: – Hardware acceleration for video and graphics – Accelerometer for motion sensing – Multi-touch – Camera and microphone – Location awareness – Push notifications – Native phone functionality • Silverlight can also utilize the XNA Framework for Audio capture and playback, Media Library Access, and even accessing Xbox LIVE. • Currently Windows Phone 7 uses silverlight 3.0, soon silverlight 4.0 with additional features will be released as part of the next MSFT SDK (MANGO) • Tombstone Vs. Dormant (MANGO Release)
  • 25. Windows Phone 7 Leading Phones Samsung Focus - http://www.microsoft.com/windowsphone/en- us/buy/7/phones.aspx?id=1536&id=1536#detail=1536 HTC Arrive - http://www.microsoft.com/windowsphone/en- us/buy/7/phones.aspx?id=1536&id=1536#detail=1684 HTC HD7 - http://www.microsoft.com/windowsphone/en- us/buy/7/phones.aspx?id=1536&id=1536#detail=1569 LG Quantum - http://www.microsoft.com/windowsphone/en- us/buy/7/phones.aspx?id=1536&id=1536#detail=1537 HTC Surround - http://www.microsoft.com/windowsphone/en- us/buy/7/phones.aspx?id=1536&id=1536#detail=1538 Dell Venue Pro - http://www.microsoft.com/windowsphone/en- us/buy/7/phones.aspx?id=1536&id=1536#detail=1568
  • 26. Mobile Application Testing - Methodologies • The testing methodology mostly depends on the type of application. • There are 3 main mobile applications: 1) Stand alone Taking into account the mobile phone limitations, such applications shall be tested by Functional tests, Usability tests, performance tests. 2) Distributed Testing for both client and server side alone and together is required (e.g- Instant messaging application)
  • 27. Mobile Application Testing - Methodologies 3) Web based In a Web-based application the client is an Internet browser, and the main functionality is built on the server-side. Testing Web based applications require the following type of testing: • Functional testing • Compatibility testing • Content testing • Performance testing • Load testing • Security testing • Server-side testing (Web server, application server) • Database testing
  • 28. Mobile Application Testing – Proposed strategy • Do invest in a device emulator – It’s a well instrumented testing environment, usually more than 1 skin – Cost effective – Bypasses real network – Easy to debug • Take advantage of a real remote device solution (Nokia, Device Anywhere, Perfectomobile) – “Hire” target device/s per hour to perform real device testing as needed • Don’t completely avoid testing on real device on real network Conclusion: Seek a solution which combines remote manual testing on real device, emulated device testing and automation tests wherever possible.
  • 29. Mobile Application Testing – Porting Concepts 1 of 3 Since there are variety of devices from each OEM, each has different constraints (Memory, screen size, heap size, form factor, camera, touch screen, installation path etc.) – it is a must to plan the application to be as much portable as possible during the design phases. Not taking into account the devices family and the above constrains will require massive porting and long development cycles when starting the deployment Having configurable pre-compiled options which vary between devices would ease the porting and enable to use the same code (Mostly) for all devices, with only per device configuration options
  • 30. Mobile Application Testing – Porting Concepts 2 of 3 Having more than one “gold” target device during development phase is also an important requirement Using automation solution as mentioned earlier and SDK’s is also an advantage. There are special application which can provide quite easily the list of supported features per device (TasePhone Java application e.g.) Using emulation environments per device is cheap and cost effective during development Taking into account the resources used by the application is important (there are tools who can shrink the entire folder of resources into a small size file which can be used by the application – BoomFs)
  • 31. Mobile Application Testing – Porting Concepts 3 of 3 When a new or pre-launched phone should be supported by the application developers there are few things which should be taken into account: Phone characteristics (Screen size, OS, memory, form factor, supported features such as camera and others) Can be retrieved for most phones through GSM Arena site How close the phone is to the lead device within a family which is already supported If the phone represents a new family this might have implications on the porting time in opposed to a new member to an existing family Is there a way to upgrade phone OS to overcome firmware defects (Cables, contact with the OEM etc.) It would always be good to have at least 2 devices from this kind to be able to reproduce defects, compare performance and firmwares. How the application works in comparison to other apps on the device (Closing method, events reaction and more)
  • 32. Mobile Application Testing – Bug Trackers • There are few free/cheap tools (Clients) which can be installed on your mobile device and allow you to submit bugs on the fly as you test your application – JIRA Mobile client for Android Beta (and soon iPhone) http://blogs.atlassian.com/jira/2010/05/jira-android-bug-tracking-mobile-phone- device-20100520b.html – FogBugs https://www.fogcreek.com/fogbugz/mobile/ • Supports iPhone, Android, Blackberry
  • 33. Mobile Application Testing – Battery Consumption • As mentioned earlier, the battery of the mobile phone is limited and the application developers must take into account the application battery usage, performance and take relevant steps and optimizations in order to assure that the application consumes the minimal battery resources as needed – There are monitoring tools which can be used to check the battery usage (Not always specific per application but this can be narrowed to the specific application vendor needs) For iPhone Battery Life Pro http://itunes.apple.com/us/app/battery-life-pro-all-in-1/id373041141?mt=8 Battery Led
  • 34. Mobile Application Testing – Battery Consumption - Continue • For Android OS there is e.g. the ‘Power Tutor’ tool – http://gigaom.com/mobile/android-power-consumption-app/ • For windows Mobile – http://www.freewarepocketpc.net/ppc-download-wr-tools-resinfo.html
  • 35. Mobile Application Testing – Leading automation tools There are 2-3 main players in the device test automation world with proven results and ROI Perfectomobile http://perfectomobile.com/?key=adwords2&gclid=CM_G0eWipaQCFR5 N5QodNUXJ6w Remote Access - http://perfectomobile.com/portal/cms/Products/Web_Access_To_Real_Handsets.html?k ey=adwords2 Automation - http://perfectomobile.com/portal/cms/Products/automated_testing.html?key=adwords2
  • 36. Mobile Application Testing – PerfectoMobile
  • 37. Mobile Application Testing – Leading automation tools Device Anywhere - http://www.deviceanywhere.com/mobile-application- testing-overview.html
  • 38. Mobile Application Testing – Device Anywhere
  • 39. Mobile Application Testing – Leading automation tools/SDK’s • Experitest - http://experitest.com/ • Provides Emulator and real device automation solution (Record/replay and code generation) • Supports the following OS: • Android • iOS • Blackberry • Windows Mobile • Symbian • Exports code to C#, Java, Python, QTP-VBScript, Perl • Robotium - http://code.google.com/p/robotium/ • robust automatic black-box test cases for Android applications (Run your application as an Android Junit test on Android SDK emulator)
  • 40. Mobile Application Testing – Experitest
  • 41. Mobile Application Testing – Experitest
  • 42. Mobile Application Testing – SDK’s & Emulator’s In order to test application developed for mobile, often the vendors would prefer to use as many devices SDK’s and Emulators to get as close to reality L&F and functionality before deploying first on device which has limited debugging capabilities in opposed to the SDK’s Few SDK’s which are free to use NetBNeans IDE which has simple integration for most common OEM SDK’s (Motorola, Nokia, SEMC) - http://netbeans.org Nokia specific Emulation environment - http://www.forum.nokia.com/Library/Tools_and_downloads/Archive.xhtml SEMC specific Emulation environment 1) http://developer.sonyericsson.com/wportal/devworld/technology/android/developer-tools 2) http://developer.sonyericsson.com/wportal/devworld/technology/windows-mobile/xperia-x2 Motorola specific Emulation environment - http://developer.motorola.com/docstools/sdks/archive/c975ADK/ Sun Java Wirelsss Toolkit (J2ME SDK for application developers) - http://java.sun.com/products/sjwtoolkit/download-2_5_1.html
  • 43. Mobile Application Testing – SDK’s & Emulator’s J2ME Sun Java Wireless SDK - http://www.oracle.com/technetwork/java/download-135801.html (Emulation/debugging environment) NetBeans SDK – IDE with OEM SDK’s plug in integration for pre-device testing and debugging Mobile Junit by SEMC Jbenchmark (http://www.jbenchmark.com/tools.jsp) LG - http://developer.lgmobile.com/lge.mdn.tnd.RetrieveDocAndTools.dev?object Type=T#1 Samsung - http://innovator.samsungmobile.com/down/cnts/toolSDK.detail.view.do?platf ormId=1&cntsId=9460
  • 44. Mobile Application Testing – SDK’s & Emulator’s Symbian Symbian signed pre-certification tools (http://developer.symbian.org/wiki/index.php/Symbian_Signed_Tools) Windows Mobile (I assume it will be EOL’d in the near future due to Windows Phone 7 platform) Test Complete (Allows connection from device to Microsoft ‘ActiveSync’/’Windows Mobile device center Synchronization’ SW). http://www.automatedqa.com/products/testcomplete/testing-pda-apps/ Windows mobile emulators - http://www.microsoft.com/downloads/en/details.aspx?FamilyID=38c46aa8- 1dd7-426f-a913-4f370a65a582&DisplayLang=en
  • 45. Real Life Experience overview Driver and Firmware for WLAN/BT/GPS testing on mobile platform running Android/Linux (IOP testing) Android SDK – Use Android SDK to pre-test your application on a variety of Emulators (Uses the latest open source file system) Google CTS ADB Shell
  • 46. Mobile Trends and Forecast Mobile Devices Begin to Replace Credit Cards 2011 looks like the year when, in some countries at least, using your phone as a credit card for lower value purchases will become a reality. Google recently announced that NFC (Near Field Communication) technology will be supported in the next release of Android – 2.3 or “Gingerbread”; HTC Flyer phone announced to support NFC within a year Social networking based devices (Recently HTC announced that they launched social networking specific devices - ChaCha and Salsa)
  • 47. Mobile Trends and Forecast - Continue Smartphones invading the enterprise (Security threats will be big factors in determining which companies aggressively deploy smartphones) Mobile OS battles will continue (Android will become the leading Smartphone platform for at least the next four years, according to the latest data from IDC. The analyst firm estimates that Android will account for 45 per cent of the global Smartphone market by 2015, up from under 40 per cent today (30-Mar-11). RIM and iOS will see more modest growth and a slight fall in overall market share to around 15 per cent Smartphone and tablet convergence (growing number of Smartphone manufacturers will feel pressured to introduce tablet computers, and will likely do so this year. Offering one but not the other will become an intensifying threat to their businesses)
  • 48. Mobile Trends and Forecast - Continue Cloud in Mobile – Apple set to launch cloud-based music service ahead of Google (In this model, people can upload and store all their music to Apple servers, and launch it from any device or share it with other users (Using an iTunes account)). Apple cuts Amazon & Google by signing the music companies
  • 50. Appendix A – Sample certifications Symbian Signed certification – Mandatory for any S60 V3 application which is intended for commercial launch https://www.symbiansigned.com/app/page Java Verified Certification – Sun’s guidelines for Java/Java ME compliant applications http://javaverified.com Windows Mobile application signing - http://msdn.microsoft.com/en- us/windowsmobile/dd569132.aspx & Windows Phone 7 Certification JSR TCK tests – Specific JSR compatibility tests which are mandatory to any JSR OEM implementer - https://jtharness.dev.java.net/ (open source test harness) – For a complete list of JSR’s see http://www.jcp.org/en/jsr/platform?listBy=1&listByType=platform Java Device test framework – specific JSR test suite with functional tests (Provided to reduce fragmentation and increase quality - http://java.sun.com/products/javadevice/index.jsp & https://jdtf.dev.java.net)