Emulator: Is available before release of mobile device. Good for frequent and early testing. Device: Exact performance can be measured. Need to test hardware support for all operations.
Dynamic Path: Calender appointment gets highlighted with red color. You need to get date when the appointment is there and email it.
Mobile applications and automation testing
Mobile Applications Dipesh Bhatewara and Automation Synerzip Pvt. Ltd. firstname.lastname@example.org Testing http://in.linkedin.com/pub/dipesh-bhatewara/2/498/612 1
Outline of the talk Ways to test mobile applications Challenges in automation testing Automation approach to achieve single automation solution on multiple mobile platforms A possible solution using Sikuli Demo 2
Nature of Mobile Applications (xcode – objective C) Email Client (XCODE – Objective C) • (java – android (webos – JS/CSS) Application SDK) (Email Email Client Client) Email Client (webos – JS/CSS) (java- android SDK) 3
Ways to test mobile application Mobile Application Mobile Device Emulator 4
Challenges in automationDifferent platforms involved in running a testNo object handles available for Object Based Testing Application Test Automation Code : under test : Emulator (Virtual Test Machine (Windows) Box) 5
Challenges in automationWriting automated test in emulator/device.Need to have knowledge of the technology platform of each Device to write testing application within.No generic automation framework available for all mobile platforms or devices 6
Approach to solve the problemImage based test automation Automate user operations eg. Click, type, drag-drop, mouse actions etc. Visual verification of the expected output Not dependent on platform underneath Can be used to automate emulator as well as device. 7
Advantages of the approach Can accurately test GUI and rendering of applications. Write test outside the device Can be used to automate multiple devices without getting into details of each platform technology Easy to automate. 8
Limitations of the approach Highly depends on the Resolution. Can not run in background. Dynamic paths are tricky to automate. 9
What is Sikuli? Visual technology to automate GUI using images. MIT research project. Open Source license. Sikuli IDE Sikuli Script API Automates anything on screen without internal APIs support Works on Windows, Mac, Linux. 10
Solution proposed in demo to test CalculatorUse Java for test Project, Use JunitImport Sikuli Script APIWrite single test which will use an interface for calculator operationsImplement interface for Android and Iphone with different set of images required for automationRun same test by changing the configuration on multiple emulators/devicesCan see the device on your machine using VNC and use that view to run your test on. 13