The iOS Gateway Interface
The iOS Gateway interface has three main panels. The left panel is context-sensitive and lists devices and simulators that are available to test. The center panel of the iOS Gateway GUI comprises four tabs: General, Screen, Console, and Diagnostics. The right panel shows a list of apps that are loaded onto the iOS device or simulator that is selected in the left panel.
The Devices/Simulators Panel
Click Devices or Simulators at the top of the panel on the left side of the iOS Gateway UI to determine its context. The name, device type, iOS version, and port number of the device or simulator are listed. The dot to the left of the device or simulator name changes color to indicate the automation status of that device or simulator.
The Center Panel
This panel has four display tabs: General, Screen, Console, and Diagnostics.
The General Tab
Settings in the General section of the window are specific to the iOS device you have selected from the Devices panel.
Start: Click to connect the VNC server and start automation.
Stop: Click to disconnect the VNC server and stop automation.
Connection Status: The status of the iOS device selected in the list in the Devices panel.
PID: The ID number of the process that's automating the selected device. You can reference the PID to force-quit a process from either the command line or the Activity Monitor app on your Mac.
The Process Identifier also displays in a tooltip when you hover over the device status in the Devices panel, as shown below:
Battery: The battery charge level of the connected iOS device.
Options
Auto-assign VNC Port: Selected by default. iOS Gateway assigns a port for VNC connection to the device or simulator.
Port: When Auto-assign Port is disabled, you can specify a port for the iOS Gateway connection.
Password: Optional. Set up a VNC password for the iOS Gateway VNC server.
Show Password: Displays the password as regular characters instead of dots.
Auto Assign WDA Port: Selected by default. Automatically assigns a port for WebDriver connections. When this checkbox is cleared, enter the port you want to use in the text field below the checkbox. The default WDA port is 8100. WebDriver automation begins as soon as the iOS device is connected.
In iOS Gateway 5.3 and later, port, VNC, and WebDriver options are disabled when automation is running. If you need to change any of these settings, stop automation, make any desired changes, then restart automation.
Manual port selection is not available for WebDriver connections on simulators.
Auto Start on Connect: Not selected by default. Automation begins as soon as the iOS device is connected.
Simulate Location: Not selected by default. Allows users to override the GPS on an iOS device. Requires changes to System Preferences.
Publish on Bonjour: Selected by default. Enables Bonjour connections.
Allow Multiple Connections, Client Preference, Allow Only One Connection: Use the drop-down menu to determine whether multiple incoming connections are allowed on the same port.
- Allow Multiple Connections: Allows connections from multiple clients.
- Client Preference: Uses the settings from the Eggplant Functional Connection Preferences tab.
- Allow Only One Connection: This setting is dependent on whether or not the Keep Current VNC Client checkbox is selected.
- Selected: The first client keeps the connection.
- Cleared: Second client connects and ends the first client's connection.
Show All Apps: Selected by default. When this setting is enabled, the sidebar in iOS Gateway displays all the apps installed on the device. If you don't enable this setting, only your own development signed and installed apps display in the sidebar.
Faster Screen Updates (Recommended for iPads): When selected, automation shown in the Viewer window can appear smoother. Eggplant Functional scripts might run find images more quickly, as well. Note that after you select this checkbox, you might need to capture new screenshots. This feature works with iOS 11 and later.
You should select Faster Screen Updates before
you create your scripts. If you select this option after
creating scripts, you might need to recapture your images. This option changes the scaling of any images in the script, so your tests might fail.
You must have Faster Screen Updates enabled in order to accurately click WebElements when doing WebDriver testing on iOS devices.
Max Frames Per Second: This determines the rate at which screenshots are captured from the iOS device. The default value is 0.0, which is an unlimited rate. To reduce CPU usage and load on the machine, set frames per second in the range between 1 and 3 for every iOS device you're automating on that Mac.
Reduced frame rates might lead to poor image location and automation performance. This can happen because quick screen updates might caught mid-animation when fewer frames are captured per second.
Provisioning Profile
This section displays only when you're automating physical devices.
- Profile: The provisioning profile that's currently in use. Click the eyeball to view the devices and certificates that are associated with the profile. Certificates that are listed in yellow expire within 30 days. Invalid or expired profiles appear in red. This preference is set per device.
If you have both an Apple Development certificate and an iOS Development Certificate on your computer, and are using Xcode 11 or later, you must
choose the profile that contains your Apple Development certificate in iOS Gateway to be able to automate your device.
- Team ID: Lists the Apple Developer Team and name associated with the selected provisioning profile.
- Cert Identity: The signing certificate that's currently in use.
Device Information
This section displays specific information about a selected device:
Name: The name of the iOS device.
Model: The model name of the iOS device.
OS version: The version of the OS running on the device.
UDID: The Unique Device Identifier specific to the device.
The Screen Tab
The Screen tab shows the screen of the connected device. This tab is view-only.
The Console Tab
The Console tab displays a device-specific iOS Gateway log. Set logging preferences in iOS Gateway Preferences.
The Diagnostics Tab
The Diagnostics tab helps you troubleshoot problems with connectivity, provisioning, Xcode, and more. See The iOS Gateway Diagnostics Tab to learn more about using this feature.
The App List
The panel at the right side of the iOS Gateway GUI lists the apps that are installed on the iOS device that's selected in the device list. You can right-click on an app from the list to perform actions like refreshing the list of apps or copying the bundle ID of an app.
The Application Information pane displays at the bottom of this list. This pane can be toggled open or closed, and the option you choose persists between sessions. This pane displays the following information:
Name: The app name that displays on the screen of the iOS device.
Version: The release version of the selected app.
Bundle ID: The full name of the app. For example, the bundle ID for the Safari browser is com.apple.mobilesafari
.
Developer signed: Whether or not the app is signed for developer use.