Test Automation on Mobile environnents Eder Figueroa 4/29/203 Automated Testing: Testing technique that uses automation testing tools to control the environment setup, test execution and results reporting. It is performed by a computer and is used inside the testing teams. Manual Testing on all possible work flows including: all fields , all combination, all rainy scenarios implies time and cost consuming Automation does not require Human intervention Automation increases speed of test execution Manual Testing can become tedious and hence error prone Typical phases in mobile application testing Mobile automated testing challenges •Multiple platforms •Rendering devices Device Diversity •Multiple network types (e.g., GSM/GPRS/ WiFi/Wi-Max). •Multiple network operators with customized network features. Hardwar e Network Functionalit y •Limitations in processing speed. •Limitations of mobile memory size. •Even Limitations in battery life spam •Gaming •Browsing •Business •Communication •Social Examples of automatable Non functional testing for mobile application • Performance Testing: Response form application • Stress/ Load Testing • Usability and UI GUI Test Automation Tools for iOS and Android Platform Specific Tools •Instruments •Monkeyrunner Generic Script Based Tools •Sikuli •Robot Framework Random Event Generator •UI/Application Exerciser Monkey •Automation Whitebox testing tools •Android Instrumentation •Instruments (IOS) •Sikuli Blackbox testing tools •Robotium Sikuli • Image Based test Automation • Visual verification on expected output • Works Windows Mac, Linux • Automates anything on screen, no API internal support Selenium • Open source Supports large number of browsers • Support multiple languages (java, c# ….) • Active community Robotium • Used for testing native android apps • Open source • Active community Instruments • Used for testing native IOS apps • Proprietary • Apple supports it • More closely linked to device and works with device and simulator. • Supports all gestures (pinch, zoom, swipe, flick, long press, scroll, etc.) DEMO Disadvantages: • Depends on high resolution • Can not run in background • Dynamic path are tricky or even impossible to automate • Don’t support gestures Instruments Disadvantages: • Requires linking with application to produce a special build. • Tester needs to write custom test script to get consolidated report of all test cases . Feature comparison Source: Test automation tools for mobile applications: a brief survey white paper. Huges mystique Conclusions Test tool selection Define the scope of Automation Planning, Design and Development Test Execution