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.
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.