Mobile Client

VSW05 Automated UI Testing for Android and iOS Mobile Apps


11:00am - 12:15pm

Level: Intermediate

James Montemagno

Principal Program Manager – Xamarin


Beyond cross-platform development, the number one pain point for mobile developers is testing apps. It's such a challenge that 92 percent of developers don't do it. Yet quality matters more than ever on mobile platforms. There are several technologies today to help with mobile testing, including Xamarin.UITest.

This is an automated UI acceptance testing framework based on Calabash that lets you write and execute tests in C# and NUnit that validate the functionality of iOS and Android Apps on your emulators or local devices. Xamarin Test Cloud also lets you use these tests to run your app across 1000's of physical devices (both Android and iOS). It uses powerful, object-based UI testing, so you can write test scripts that do exactly what your users will do: tap, swipe, rotate, wait for UI elements to appear and so on.

When building for multiple platforms, you can share your test logic across the platforms, increasing reuse and enable faster test authoring. This session will explore how to create a test in Xamarin.UITest to run locally and then upload an app to Test Cloud. You'll try Xamarin App Explorer, which systematically exercises screens and controls in your app before you ever write a single test. You'll also look at Behavior Driven Development using Calabash and Cucumber.

You will learn:

  • How to take out all of the hard work and pain points of testing Automated UI Testing
  • How to share test logic across all platforms increasing your code reuse and speeding up development cycles
  • How to use Behavior Driven Development to create test scripts to ensure apps