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
API Testing: UI Tools
In this post we will explore three UI tools you can use for API testing: Postman, SoapUI and Runscope. We do a deep dive into using Postman for API testing because we love using Postman. This post is the second in a series of blog posts on API testing. You can find the first part here. 1. Postman Postman is […]
API Testing : Developer Tools
In this post we will show you how to use Developer Tools in your browser to inspect the API calls that your web application is making over the network. This post is the first in a series of posts on the following topics related to using APIs to test web applications: Using developer tools to check the API calls UI […]
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 […]
Android unit testing: Android testing framework and Robolectric
Problem: There are not many good tutorials on Android unit testing Android applications are written in Java. So you probably think if you know JUnit, you can unit test Android applications. Surprise! JUnit is not sufficient for unit testing Android applications. Junit works when the code runs within a JVM. Android applications interact with the Android OS. So you need […]
NoClassDefFoundError: org/hamcrest/SelfDescribing
I hit the following issue while trying to run a JUnit test in Eclipse: initializationError The Failure Trace displayed a message stating java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing I made sure that I had JUnit 4 and org.hamcrest.core along with the Java library in my project but still faced this issue. After analyzing quite a bit, I noticed that my JRE System Library also […]
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 […]
BrowserStack configuration for Selenium automation
BrowserStack has a number of useful configuration options. In this post, we will show you how to make your automated test runs to use specific configuration parameters of BrowserStack. We walk you through the steps needed to modify your existing automated test runs to use specific configuration parameters of BrowserStack. We assume you have a BrowserStack account. If not, please […]
Selenium & BrowserStack: Browsers, devices as parameters
In a previous post, we showed you how to get started with running your Selenium automation on BrowserStack. In this post Team Qxf2 will show you how to modify your existing automation scripts to run on different platforms, browsers and devices. Since a lot of our readers seem to like mobile automation, we have chosen to run these tests on […]