Launch a basic Appium 2 session on Kobiton (Beta) Kobiton includes two ways to run mobile automation: Xium, Kobiton’s high-speed reimplementation of Appium Server, and basic Appium 2. The default mobile automation method is Xium. Follow this guide to switch to basic Appium 2 for your automation session. Note that basic Appium 2 support is a beta release, so it currently has several limitations that will be considered for future releases. Prerequisites A basic Appium 2 session can only be launched on devices hosted by Kobiton v4.9 or above. Modify the capabilities in your Appium script The following modifications must be made to the capabilities of your existing Xium script to run a basic Appium 2 session successfully: Add kobiton:runtime Add the 'kobiton:runtime' capability to your script’s desired capabilities list. The value of this capability must be 'appium' to launch a basic Appium 2 session. Specify automationName The 'appium:automationName' capability is mandatory in Appium 2. This capability must have either of the below values: 'XCUITest' for iOS devices. 'UIAutomator2' for Android devices. Add vendor prefixes With Appium 2, vendor prefixes must be added to non-standard capabilities. The list of standard capabilities is given in the WebDriver Protocol specifications and includes a few commonly used capabilities such as browserName and platformName. For non-standard capabilities, unless there are specific instructions from Kobiton to use the kobiton: vendor prefix, add appium: prefix to all of them. For 'app', use 'kobiton:app' instead of 'appium:app'. Example Below is a sample list of capabilities that can be used on a Xium session: const desiredCaps = { bundleId: 'com.example.ToDoApp', deviceOrientation: 'portrait', sessionName: 'Automation iOS Hybrid App', sessionDescription: 'Automation session', noReset: true, fullReset: false, captureScreenshots: true, networkActivity: false, app: 'kobiton-store:v657531', deviceGroup: 'ORGANIZATION', deviceName: '*', udid: 'aa2ace81ea5b7e6164965b97c5bf432432', platformName: 'iOS', } After modification to run Appium 2, it should look like the below: const desiredCaps = { 'kobiton:runtime': 'appium', 'appium:automationName': 'XCUITest', 'appium:bundleId': 'com.example.ToDoApp', 'appium:deviceOrientation': 'portrait', 'kobiton:sessionName': 'Automation iOS Hybrid App', 'kobiton:sessionDescription': 'Automation session', 'appium:noReset': true, 'appium:fullReset': false, 'appium:captureScreenshots': true, 'appium:networkActivity': false, 'kobiton:app': 'kobiton-store:v657531', 'kobiton:deviceGroup': 'ORGANIZATION', 'appium:deviceName': '*', 'appium:udid': 'aa2ace81ea5b7e6164965b97c5bf432432', 'platformName': 'iOS' } Once these changes are made, your script is ready to run basic Appium 2 sessions on Kobiton. Notes/Limitations Limited session exhaust is available, which means there are no device logs, device metrics, Appium inspector data, and network payload capture data at this time. Although there is a device logs file downloadable from the Overview page of a basic Appium session, the file only contains logs before the basic Appium script started. Mixed sessions have the following limitations while a basic Appium 2 script is running: Manual interactions with the device are not available for Android devices. On Lightning mode devices, live video is not available when Lightning mode is off. AI features - including Scriptless, generate Appium script, validations, and flexCorrect - are not supported for basic Appium 2 sessions as they rely heavily on exhaust. Basic Appium 2 script does not support iOS 15 and later devices with passcode enabled. Additional notes Check the current Appium Server version A Kobiton admin who has access to the Mac mini host can use the following Terminal command to check the Appium Server version: /usr/local/deviceconnect/appium-server/index.js --version