![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
Version 8.0.0 |
These options are available to control the testing of iOS applications:
![]() | |||
Figure 40.32: Options for iOS Tests |
During the start and the execution of iOS tests, a Xcode build is executed to build and run the required device agent. During normal execution, the detailed output of the process is hidden from the terminal.
While tracking down errors, it might be helpful to display the process output in the terminal. This can be enabled for the device instrumentation, the execution or both phases of the test.
As with Android testing, the interaction for inspection and test recording has to be performed on a dedicated window, see Record actions and checks for iOS. When using the Simulator to execute the application under test, it can be confusing when the user interface is visible twice - in the Simulator window and in the recording window.
To avoid confusion, QF-Test can automatically hide the Simulator window when the recording window is opened. When you explicitly switch to the Simulator, its window will be reactivated. However, if you choose "Always", additionally to hiding the Simulator, switching to the simulator will bring up the recording window - as long as it is open.
To control the iOS device or the Simulator, QF-Test uses a controller client. If required, the iOS Simulator is started by QF-Test along with the controller. By default, the Simulator is also closed when the controller client is stopped.
During test development, it might be helpful to keep the Simulator running, even when the QF-Test controller client was stopped. It is possible to define here that the Simulator should not be closed together with the controller, or only if it was opened by the controller client itself.
When the connection to the iOS device gets interrupted during a test run, QF-Test automatically restarts the device agent to reestablish the connection. If the iOS target device is simulated, QF-Test by default assumes that the Simulator was closed intentionally to stop the test run. With this option, it is possible to enable the connection recovery also for Simulator connections, including a restart of the Simulator app.
QF-Test can execute tests on apps running directly on an iOS device. Due to platform restrictions, the device agent, which is temporarily installed on the device to perform the required interactions, has to be automatically signed using a valid iPhone Developer Certificate. To identify the certificate, the Team ID (also known as "Certificate Organizational Unit") has to be provided.
The Team ID is a unique 10-character string generated by Apple assigned to your team. You can find your Team ID listed under the "Organizational Unit" field in your iPhone Developer certificate in your keychain. You can also find your Team ID using your developer account. Sign in to https://developer.apple.com/account, and scroll to the Membership details. Your Team ID appears in the Membership Information section under the team name.
To generate a development certificate, open the Settings dialog of Xcode, select the "Accounts" tab and add your developer account there using your Apple ID.
Normally, this value can be left empty, since Xcode automatically deduces the Signing ID from the certificate specified by the Team ID, but sometimes, a dedicated Signing ID has to be provided (usually Apple Developer or iPhone Developer).
If enabled, a provision profile to execute the agent on the connected device can be created automatically by Xcode during device instrumentation.
If enabled, a new device can be registered automatically by Xcode during device instrumentation.
Xcode may fail to create a provisioning profile for the agent - especially when using a free developer account. Here it is possible to manually change the bundle id for the agent to something Xcode will accept.
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() | Last update: 8/9/2024 Copyright © 1999-2024 Quality First Software GmbH |