Skip to main content


Showing posts from 2017

Implementing supervised Android and iOS Monkey tests

I assume that any QA engineer who works in mobile project has implemented in one or another way monkey tests for their applications. Today I'm going to explain how to implement in about 1 hour your own supervised monkey (or pseudo-monkey) tests for Android or iOS apps.

In this article I'll use the following testing frameworks - Espresso together with UIAutomator for Android and XCTest for iOS.

Usually monkey tests are implemented using 3rd party's libraries or scripts which can bring us some disadvantages:
Monkey tests are not the part of the project codebase and not controlled by Espresso or XCTest test frameworksIs usually a 3rd party library with it's own issues and need for maintenanceHard to fetch and process test results
Having monkey tests in native testing frameworks like Espresso for Android of XCTest for iOS brings us the following advantages:
Monkey tests are the part of the UI tests codebase. Fully owned and controlled by youPossibility to use other tests in …

Preparing android emulator for UI test automation.

This post is about setting up android emulator for UI test automation. Properly configured emulator is the basis for reliable tests. Hundreds or thousands of professionally written test cases is great but if they become flaky because of the environment they are running on, their value reduces a lot.

I will give you a couple of advices I'm following in my test automation projects. In general we will go through below topics:
Managing emulator system animationsControlling soft keyboard appearanceChanging emulator system locale Tweaking first and second points will reduce to minimum flakiness in our automated tests which can be caused by emulator.

For those who are lazy to read the whole article at the bottom of the post I shared youtube video where I describe the same points with one more additional hint on top :)
1. There are three types of system animation we may control: window animation scaletransition animation scaleanimator duration scale
Emulator system animations can be control…