icon

iOS Device Testing

Run iOS XCUITests on devices

Run iOS XCUItests on physical devices with Google's Firebase Test Lab. You do not have to set up and register your own devices and you don't need your own Firebase account.

We'll go over the most important configuration information for the Step. For more information, check out our detailed guide.

Configuring the Step

To use the Step, you need to build an IPA file with Xcode's build-for-testing action. You can use our dedicated Step:

  1. Add the Xcode Build for testing for iOS Step to your Workflow.

    The Step exports a .zip file that contains your test directory (by default, it’s Debug-iphoneos) and the xctestrun file.

  2. Add the iOS Device Testing Step to the Workflow.

  3. In the Test devices input field, specify the devices on which you want to test the app.

  4. Optionally, you can set a test timeout and configure file download in the Debug input group. The path to the downloaded files will be exported as an Environment Variable and it can be used by subsequent Steps.

  5. Make sure you have the Deploy to Bitrise.io Step in your Workflow, with version 1.4.1 or newer. With the older versions of the Step, you won’t be able to check your results on the Test Reports page!

Please note you should not change the value of the API token and the Test API's base URL input.

Troubleshooting

If you get the Build already exists error, it is because you have more than one instance of the Step in your Workflow. This doesn't work as Bitrise sends the build slug to Firebase and having the Step more than once in the same Workflow results in sending the same build slug multiple times.

Useful links

Device testing for iOS

Related Steps

Xcode Build for testing for iOS Xcode Test for iOS

Similar steps

Run Android UI tests on virtual devices

Performs xcodebuild's build-for-testing action

Amazon Device Farm File Deploy

Amazon Device Farm Runner