AWS Testing Services: Device Farm

Mobile App testing is always challenging unless the device range has been defined.
I know you may agree with me as you may have to run out of real physical devices to continue testing. Most of the QEs are facing this particular challenge of finding the required test device in their testbed, but AWS offers Device Farm which is a relief.

I intended to write this article to share my real hands-on experiences with AWS Device Farm Service in testing aspects.

Device Farm will let you interact with your test application on a device in real-time. You are allowed to perform any kind of activity which you do are generally performing on a mobile device, such as,

  • App Installations
  • Changing Device Settings
  • Watch Videos / Images etc;

Getting Started

How to get started with Device Farm

  1. You may log in to your AWS Account.
  2. Then choose the option “Device Farm” under Services.
  3. Click to get started as a New Project.
  4. Enter Project Name and click to “Create”.

5. There are two options you can get started with Device Farm.

  • Create a New Run

If you want to start installing the application and get started, you can upload the device farm log as .apk or .ipa

Creat New Run

You can choose the application as .apk or .ipa

choose file

Or you can provide a web app link.

web app
  • Remote Access

If you do not want to upload any apk/s or ipa/s at the very beginning, you can simply get started with the device and play around.

Now there are a few questions that were being raised as
Can’t anyone install the app if they do not get started with the above “Create a New Run” option”. The answer is, “We can!” When you start with the Remote Access option, Once the device is loaded, you can simply browse for an app store link via the browser and login and click to install the app directly. The application will be downloaded and get installed on the device in real-time.

Remote Access
Start a New Session

Then confirm to start the session.

After clicking on an individual device, you’ll be taken to the device details page. In this view, you can view details of the individual test including videos of the test, test logs, app performance metrics & more.

Once the chosen device is started, it will be displayed as below.

Once you are done with your particular test performance, you may stop the session. If not the

Analyze Logs

The session logs can be downloaded to a log.json file.

Challenges

When it comes to the manual testing verifications using the Device Farm, I faced a few challenges where I had to rely on a few circumstances.

  1. Slowness — When it comes to remote access the major challenge is the slowness to get the device loaded depending on the network peed you have. Device Farm is somewhat slow but still manageable with a good network.
  2. Resolution Adjustments cannot be done! — The device which you are viewing on the wen screen is pretty much small and hard to see the content on the particular device screen as all these are small mobile screens. I reported this to AWS Support, but they also had no solution which was hosted to resolve this issue. So we may have to live with the resolution which AWS provides. But as the support informed, the AWS is planning to mitigate this problem soon.

Software Quality Assurance Lead fascinated in Test Automation. Storyteller and a technical writer.