Problem: UI element identifiers are not consistent across mobile platforms. Mobile is eating the world. However mobile operating systems are not yet fully mature. For example, UI element identifiers change between versions of the same OS. They also look different across Android and iOS. This causes automation scripts to be brittle. We hit this problem recently. We were writing automation […]
Python Appium tests on different Android versions
Pinch, Zoom and Swipe using Appium
Problem: Documentation on automating mobile gestures is not extensive. In this post, we show how to automate mobile gestures like tap, swipe, pinch and zoom using Appium. Why this post? I watched Steve Jobs introduce the iPhone back in 2007. Among the jaw dropping moments were using the best stylus ever invented (our fingers) and the multi-touch pinch-to-zoom feature. Mobile […]
What is NAF ?
UIAutomatorViewer is a tool to inspect and identify UI elements in Android apps. However not every UI element you see is accessible to UIAutomatorViewer. Sigh. I know. That sucks. But at the very least, UIAutomatorViewer lets you know which of these elements are not accessible. I was messing around with Appium and DroidFish secretly hoping to write an automated test […]
appWaitActivity: A new session could not be created
While exploring Appium with mobile devices I hit the following error WebDriverException: Message: u’A new session could not be created. (Original error: atpwta.live/.activity.Main never started. Current: atpwta.live/.activity.root.TournamentList)’ Initially, I had set desired capabilities to: desired_caps[’platformName’] = ‘Android’ desired_caps[’platformVersion’] = ‘4.4’ desired_caps[’deviceName’] = ‘Moto E’ desired_caps[’appPackage’] = ‘atpwta.live’ desired_caps[’appActivity’] = ‘.activity.Main’desired_caps[‘platformName’] = ‘Android’ desired_caps[‘platformVersion’] = ‘4.4’ desired_caps[‘deviceName’] = ‘Moto E’ desired_caps[‘appPackage’] […]
Ways to identify UI elements in mobile apps
Problem: Many testers do not know how to identify UI elements in mobile apps. In this post, I explain about different ways to find UI elements in Android’s calculator app. I also show you examples of using Appium’s API with the different locator strategies. Why this post? Identifying UI elements is a key component of writing UI automation. Most testers […]
Appium tutorial: Execute Python tests on mobile devices
This Appium tutorial will show you how to run automated tests on a real physical device. We estimate skimming through this post will take you 10 minutes. We estimate working through this post, step by step, will take you about 90 minutes. In this post we will cover getting setup with Appium, interfacing with real devices, writing and running Appium […]
Mobile automation: Run Appium tests on Sauce Labs
Problem: Maintaining infrastructure for testing your mobile applications on different platforms and browser versions is time consuming. Why this post? This post was written for the hands on tester looking to explore different tools testers can use for mobile automation. In this post we will show you how to run your Appium tests on Sauce Labs. We estimate that you […]
Get started with mobile automation: Appium & Python
Problem: There is a perception among testers that getting started with mobile automation is hard. Why this post? I strongly believe that a tester must have a wide range of skills. You do not need to be an expert in all of them, but it is extremely important to have contemplated a spectrum of concepts and explored a variety of […]