What the iOS 10 Release Means for Mobile Testing
October 04, 2016

Eran Kinsbruner
Perfecto by Perforce

The recent iOS 10 release raises a lot of questions about how mobile apps will respond to the updated system, and how developers can ensure an untarnished user experience. One of the biggest challenges that development and testing teams are facing is that certain devices have now been made obsolete. iPad 2, iPad 3rd gen, iPad mini, iPhone 4S, iPod touch 5th gen—none of these devices will update to run iOS 10.

With Apple’s decision to withhold the update from these devices the company considers “outdated,” development and testing teams will need to jump through hoops to maintain a quality user experience.

From the recent Perfecto Digital Test Coverage Index report it's clear that at least iPad 2, iPhone 4S and iPad mini are still among the most-used devices in various markets, including the U.S. (see below):

It’s safe to assume that withholding the update from these popular devices may lead to a lower adoption rate for the new OS — large groups of users will continue to use the iPad 2, iPad Mini and iPhone 4S, and will be unable to make the switch. The end result? We're going to see growing iOS fragmentation in various markets, and complex testing ahead.

In preparation for this mobile testing overhaul, developers need to take a look at their existing testing labs and plans, and alter them to fit the new market matrix.

Automate Across Operating Systems

With iOS 10 comes the new version of Mac’s OS Sierra and Safari 10. These new operating systems will need to be tested across iOS 10 devises, and will require additional lab configurations in your overall testing activities. To ensure quality across operating systems, teams should do a full regression of the scripts that were used to run on iOS 9 against iOS 10, and fine tune to make sure the scripts can run on both platforms until the next release.

Test Across Devices

Teams will need to sustain their test automation and development activities on iOS 10 devices and iOS 9 critical devices. This means that teams will need to support the new iPhone 7 and iPhone 7 Plus, along with other Apple devices that will run iOS 10. Unless you have an automated and continuous lab setup to test efficiently across an array of devices, most teams should expect a latency in testing activities.

Ensure Proper Lab Environments

To debug your app across devices, and ensure that it’ll work in parallel across iOS 9 and iOS 10, teams need to prepare environments with the new permutations. This includes both new Safari and Mac OS versions, new Xcode versions for developers, and of course, having new devices, smartphones and tablets with both iOS 9 and iOS 10 tested side by side.

Prepare for Added Complexity with Appium Framework

For teams building tests for iOS using Appium 1.6, things just got a bit more complicated. In iOS 10, Apple dropped its Instruments support and UIAutomation, moving its automation solution towards the new XCUITest framework. This change impacts existing Appium scripts that leverage Apple Instruments and UIAutomation framework, and will cause execution problems and compatibility issues when trying to run them on iOS 10/iPhone 7.

Now consider the growing iOS fragmentation and we’re left with a second layer of complexity. For devices that are no longer supported by iOS 10, existing Appium scripts that use the old UIAutomation framework are still relevant. That means that teams will have to migrate scripts to the new framework, or maintain both the old one for older devices and the new one for newer devices.

As testing roadblocks pop up with the iOS 10 release, end users still expect their mobile apps to perform seamlessly — so it’s time for developers to rise to the challenge.

Eran Kinsbruner is the Technical Evangelist for Perfecto.

Eran Kinsbruner is Chief Evangelist at Perfecto by Perforce
Share this

Industry News

May 16, 2022

Red Hat announced new capabilities and enhancements across its portfolio of open hybrid cloud solutions aimed at accelerating enterprise adoption of edge compute architectures through the Red Hat Edge initiative.

May 16, 2022

D2iQ announced a partnership with GitLab.

May 16, 2022

Kasten by Veeam announced the new Kasten by Veeam K10 V5.0 Kubernetes data management platform.

May 12, 2022

Red Hat introduced Red Hat Enterprise Linux 9, the Linux operating system designed to drive more consistent innovation across the open hybrid cloud, from bare metal servers to cloud providers and the farthest edge of enterprise networks.

May 12, 2022

Couchbase announced version 7.1 of Couchbase Server.

May 12, 2022

Copado added Copado Robotic Testing to Copado Essentials.

May 11, 2022

Red Hat announced new advancements within its Red Hat Cloud Services portfolio, delivering a fully-managed and streamlined user experience as organizations build, deploy, manage and scale cloud-native applications across hybrid environments.

May 11, 2022

JFrog introduced a new Docker Desktop Extension for JFrog Xray that allows organizations to automatically scan Docker Containers for vulnerabilities and violations early in the development process.

May 11, 2022

Progress announced a series of updates in Progress Telerik and Progress Kendo UI.

May 11, 2022

Vultr announces that Vultr Kubernetes Engine (VKE) is generally available.

May 10, 2022

Docker announced new features and partnerships to increase developer productivity. Specifically, the company announced Docker Extensions which allow developers to discover and add complementary development tools to Docker Desktop.

May 10, 2022

Red Hat announced the general availability of Red Hat Ansible Automation Platform on Microsoft Azure, pairing hybrid cloud automation with the convenience and support of a managed offering.

May 10, 2022

The Fedora Project, a community-driven open source collaboration sponsored by Red Hat, announced the general availability of Fedora Linux 36, the latest version of the fully open source Fedora operating system.

May 10, 2022

Progress announced the release of Progress Chef Cloud Security, extending DevSecOps with compliance support for native cloud assets and enabling end-to-end management of all on premise, cloud and native cloud resources.

May 10, 2022

Platform9 announced new platform capabilities in Platform9 5.5 that make it easier for cloud-native development and operations teams to build, scale, and operate apps and Kubernetes clusters in the cloud, on-premises, and at the edge.