Using AWS for Mobile Device Testing
The proliferation of mobile devices and platforms has complicated the testing process in recent years. Fortunately, the AWS Device Farm lets admins and developers run tests against a variety of device types.
For most IT professionals, testing is part of the job. Admins test server hardware, operating system patches and configuration changes. Developers test the applications that they have built.
In recent years, the proliferation of mobile devices has made the testing process more difficult because IT pros must often test on a variety of platforms. Fortunately, Amazon Web Services (AWS) can help with mobile device testing. An AWS tool called Device Farm allows both administrators and developers to run tests against a variety of device types.
To use Device Farm, log in to the AWS console and select the Device Farm option, which is located in the Mobile Services section. There are two options for working with the AWS Device Farm. There is a pay-as-you-go option, which is currently priced at $0.17 per minute, and there is an unlimited testing option that is currently priced at $250 per month. For the purposes of this article, I will be using the pay-as-you-go option.
Click on the Get Started button, and you will be prompted to enter a project name. This name can be anything. It exists solely to help you to differentiate between testing environments. Upon entering a test name, you will be taken into the testing environment. As you can see in Figure 1, the interface contains options for automated tests and for remote access tests. The Automated Tests tab allows you to either run built-in tests or run your own scripts, and see the results within a report. The Remote Access tab actually allows you to remotely access a device through your browser.
The Automated Tests are designed primarily for developers who want to try out their apps on a variety of device types, but you can also try out Web apps. To do so, click the Create a New Run button, which is shown in the previous figure. Next, you will need to provide a name for the run and specify the application that you want to test. You can see what this looks like in Figure 2.
At this point, the options that you will see vary depending on whether you are testing an app or a Web app. In the case of a Web app, for example, you will be asked to specify a run name and then upload your testing script. You can use Appium Java Junit, Appium Java TestNG or Appium Python. You can see what this looks like in Figure 3 below.
Once you have uploaded your testing scripts, you can select the devices on which you want to run the tests and then start the tests.
As previously noted, the automated tests are primarily geared toward developers who have an app that they need to test. Even so, Device Farm can also be of use to IT admins. It has become commonplace for users to work from a variety of device types, and you can use the Device Farm's Remote Access option to test the end user experience on various devices. For example, an administrator might use this option to see how a remote application looks on a particular device type.
To use the remote access capabilities, select the Remote Access tab and then click on the Start a New Session button. Upon doing so, you will see a long list of iOS and Android devices that you can test against. The interface also allows you to search based on name, platform, OS and form factor, as shown in Figure 4.
Make your selection, and then click the Confirm and Start Session button. AWS will then establish remote connectivity to a device of the chosen type. You can see what a remote access session looks like in Figure 5 below.
As you can see in the figure above, AWS provides controls for changing the device orientation and for uploading files to the device.
The AWS Device Farm can help make it easier for IT pros to support mobile devices. Device Farm makes a number of different mobile device types available for testing, thereby allowing developers to test apps, and IT pros to test the way that various devices are able to interact with infrastructure components.
Brien Posey is a 16-time Microsoft MVP with decades of IT experience. As a freelance writer, Posey has written thousands of articles and contributed to several dozen books on a wide variety of IT topics. Prior to going freelance, Posey was a CIO for a national chain of hospitals and health care facilities. He has also served as a network administrator for some of the country's largest insurance companies and for the Department of Defense at Fort Knox. In addition to his continued work in IT, Posey has spent the last several years actively training as a commercial scientist-astronaut candidate in preparation to fly on a mission to study polar mesospheric clouds from space. You can follow his spaceflight training on his Web site.