Hi David,
The change in question landed yesterday and will be part of the 5.7 rel ease.
The CL in question is 46490028 on //UE5/Main (https://github.com/EpicGames/UnrealEngine/commit/9fcf684b02dc2c6bc8cec88c26bdac4b66fdcf1c on GitHub).
Here is the docs comment from the source code:
AppiumContainer is a wrapper for both an Appium server instance and an AppiumDriver.
It’s primary use in Gauntlet is for automating dismissal of blocking system notifications that cannot be managed by an MDM profile.
Provided you configure your environment correctly, the container will automatically initialize as part of an IOS app instance execution.
Steps for configuring your environment:
1. Download appium on your host. It’s recommended you use the global npm installation ‘npm install -g appium’.
2. For real device testing, you will need a WebDriverAgentRunner.app which is signed with a mobile provision that includes your device.
For this you have two options:
- Build the app from source. This lets you configure bundle id’s if your signing cert only allows for certain identifiers.
- Download the precompiled app and re-sign after replacing the embedded mobileprovision.
In either case, you can find both the source and precompiled app on this page https://github.com/appium/WebDriverAgent/releases
3. Create a JSON file that can be de-serialized to the ‘AppiumContainer.Config’ type. This file is used to configure the driver with information
that is specific to your team. Place this file in a location that can be read by your host.
4. Point the container to the location of the json file you created in step 4 by doing one of the following:
- Setting the UE-AppiumConfigPath EnvVar to a qualified path or a relative path to your UE root.
- Run UAT with -AppiumConfigPath=/path set to a qualified path or a relative path to your UE root.
Once all these steps are completed, before TargetDeviceIOS.Run starts the app process, it will execute these actions:
1. Start an appium server on an available loopback port
2. Install the WebDriverAgent app
3. Start the driver with your configured settings
From there appium will automatically accept/dismiss any system prompts it encounters.
Best regards