mdc2010 automated mobile testing
TRANSCRIPT
Automated Mobile Testing
Nilesh MaheshwariBusiness Head – Mobile & Wireless
Agenda
Challenges Test Automation Unit Testing Tools Benefits of Test Automation Criteria for Test Automation Limitation of Test Automation Mobile Test Automation tools- Comparison
Where do we stand now….
Features
Time CostCompromise
Balance with Features and Time-to-market
Balance with Time-to-market and Cost
Quality is compromised
Smartphone Software Development Scenario
Generic Challenges
Diversity of device / Platforms Hardware configuration Mounting application complexity Network related challenges Accelerating software development
schedules
Technical Challenges
Large amount of Tests in all testing scope API Level test execution in target devices or
emulator Verification and UI Control in testing phases
of application System’s special feature requires flexible
tools and customization
What is the solution for this?
Test Automation
Test Automation is the use of strategies, tools
and artifacts that reduce the need of human
involvement on repetitive tasks.
Supports – Unit, Functional & Navigation
testing.
How test automation works?
Application specific Test case writing
Conversion of test cases into scripts
(Write / Record)
Execution of Test Scripts on devices
Unattended test cycles
Benefits : Test Automation
Reliable Repeatable Programmable Comprehensive Reusable Increased productivity. Superior application quality. Cost Reduction
What about Unit Testing?
Unit Testing
JMUnit / B-Unit is a member of the xUnit family suitable for testing Java ME / BlackBery applications. JMUnit test-cases can directly run on device or Emulator.
CppUnit is a unit testing framework module for C++, described as a C++ port of JUnit. The library is released under the GNU Lesser General Public License.
OCUnit is a testing framework for Objective C in the Mac OS X. With OCUnit, testing becomes integrated with development.
Can we test all mobile applications through test automation?
Selection Criteria
Major Constraints Increasing Complexity of mobile application In-Depth functional testing Testing device features used in app i.e.
Camera , accelerometer LBS & Bluetooth Call & VoiceMail scenario Multimedia, Barcode, NFC Apps Games, AI applications
nanoVNC Demo
Available Tools
TestQuest DeviceAnywhere Perfecto mobile Eggplant NanoVNC
Comparison Matrix
Comparison MatrixFactors Sub-Category TestQuest DeviceAnywhere Perfecto mobile Eggplant nanoVNC
Performance
# Real Time device experience
# Network problem,requires massive bandwidth to support smooth flow of testing and script recording on a remote device through the internet
# Network problem,requires massive bandwidth to support smooth flow of testing and script recording on a remote device through the internet.
# Real Time device experience# Performance VNC Server and bandwidth connectivity dependent
# Real Time device experience# Minor latency issues # Performance Wi-Fi connectivity dependent
Other Comments
# TestQuest Pro verifies the system under test’s(SUT) operation in a manner 100% identical tothat of manual tester by becoming a “virtualuser.”
# It interacts with theSUT through the system’s human interfacessuch as the screen, pointing devices, keyboard,etc.
# It work on Direct-To-Device™, DeviceAnywhere
Test Center enables developers around the world to connect to and control mobile devices – over the Internet – for all application and content testing needs
# The Perfecto Mobile system is a hardware and software solution. Mobile handsets are mounted on cradles and they connect to the Perfecto Mobile system through their data ports.
# Users access the handsets via a web-based UI.
# eggPlant is a low-overhead, non-invasive black-box test and process automation tool. Since it does not reside on the system-under-test and is technology agnostic, it can test in many situations that other tools cannot. By using image capture and advanced search techniques, most ui changes are not a problem.
# This method involves using the open source VNC Robot and a VNC server running on a mobile device.VNC robot is used to connect to the VNC server running on the device and can then be applied to record scripts.
# nanoVNC works in conjunction with a VNC client, it displays the phone’s screen in a window on the PC, and forwards keystrokes and mouse movements from the PC to the phone.
Thank YouNilesh Maheshwari
+91-9826384858
Mobile Developer Conference by
MoMoBhttp://momob.in