Testing on iOS 8 and Lower

PDF for offline use

Let us know how you feel about this

Translation Quality


last updated: 2016-10


To test on older versions of iOS, such as iOS 8, install Xcode 7 alongside Xcode 8. It is possible to switch between versions of Xcode by setting the DEVELOPER_DIR environment variable to point the /Contents/Developer/ folder of the Xcode version to use.

For example, if Xcode 7 is installed in /Applications/Xcode7.app, then the environment variable could be set as follows

bash $ export DEVELOPER_DIR=/Applications/Xcode7.app/Contents/Developer $ cucumber

Determining the Current Version of Xcode

To find the current version of Xcode in use, you can use the following command:

$ xcrun xcodebuild -version
Xcode 8.0
Build version 8A218a

Automation API

The latest versions of Calabash and UITest support testing with both Xcode 7 and Xcode 8. The verison of Xcode used to build the app will determine which native automation API is used to automate the app. The Testing Framework and iOS compatibility for Calabash is determined by the version of Xcode that is used. See the table below:

iOS Version Local with Xcode 7 Local with Xcode 8
iOS 7 UIAutomation n/a
iOS 8 UIAutomation n/a
iOS 9 UIAutomation DeviceAgent
iOS 10 n/a DeviceAgent

For example, a Mac with Xcode 8 installed will be able to test on devices running iOS 10 or iOS 9 using DeviceAgent, but would not be able to test on iOS 8 or below.

Xamarin Workbook

If it's not already installed, install the Xamarin Workbooks app first. The workbook file should download automatically, but if it doesn't, just click to start the workbook download manually.