Kobiton 4+ latest updates

Kobiton 4.20 Release Notes

September 6, 2025

New OS support

  • iOS/iPadOS 26 Beta 6

    • Passcode mode not currently supported.

  • iOS/iPadOS 18.6 official

Audio Injection in a manual session

Audio injection requires at least one additional bluetooth bridge server to enable. Contact Kobiton support if you are interested in enabling this feature.

Previously, the audio injection feature was introduced to automation sessions. With this release, audio injection is now available for manual sessions as well.

To inject audio, start a manual session on a device that has bluetooth audio enabled, then upload a supported audio file using the Audio Injection option under Media Injection and select Inject.

Devices that has bluetooth audio enabled have a microphone icon next to their name. You can also filter for bluetooth audio devices by choosing Audio → Supported in the search bar on the Device List.

  • Supported audio input: max 30 MB; WAV (PCM 16-bit, mono, 8 kHz); OGG or MP3 (mono, 8 kHz). Files not following the format will sound like static when played back.

  • Supports Standard mode only.

  • One Mac mini host can have one Bluetooth bridge server, which can support max 2 devices.

  • App must have microphone permission enabled.

  • Ensure that the device is actively using the microphone (in a call, meeting, or voice recording) and the microphone is not muted before injecting.

  • Some voice recording apps on Android require changing the input to Bluetooth in Settings.

  • Audio output:

    • Supported via HFP (calls, Google Meet, Zoom)

    • Not supported via A2DP (YouTube, music, playback)

  • Not currently available in Public Cloud.

New option to exempt apps from cleanup based on bundle ID or package name

For customers who require specific apps to persist between test sessions but need to enable a cleanup policy, we introduced an option to specify the bundle ID or package name to be exempted from cleanup. The new option is available when creating or editing a custom cleanup policy, and you can specify exact bundle ID/package name or use the wildcard character *. Example: com.example.SampleApp, com.example.*, org.*

  • When a device reconnects after a restart or disconnection, the organization’s default cleanup policy (not the team’s) is applied.

  • Assign a custom cleanup policy with app exemption as default for the organization to ensure that the specified apps are not cleaned up under any situation.

Streamlined Kobiton Portal login flow

We have reduced the necessary steps to improve the experience of SSO login via Kobiton Portal. The details are as followed:

  • At the login screen, provide the username or email and choose Continue

  • Based on the username/email, fill in additional information:

    • For organizations without SSO enabled, fill in the password and log in.

    • For organizations that only allow SSO login, the user is redirected to the SSO login page.

    • For organizations that allow both SSO and Kobiton credentials login, the password field is displayed along with the Login with SSO button.

Improvements to test case remediation flow

For customers using our AI-Augmented testing (Scriptless), several major improvements were introduced to the test case management page:

  • The trash icon and the checkbox under each test case have been removed.

  • New 3-dot icon displays under each test step. Selecting this icon reveals several possible options:

    • Delete test step

    • Remediate test step (for Touch action only)

    • Edit remediation (for test step that was remediated before).

  • You can now remediate test step for an unlimited number of time.

  • Only touch actions can be remediated.

  • Only elements under the touch point can be selected for remediation. If an element falls outside this area, it cannot be selected.

  • Only remediation performed on the latest version of the test case can be saved. The remediate test step option still appears in older versions of the test case, but edits cannot be saved.

Appium Self-healing (flexCorrect) with automation session as baseline

Another feature intruduced for AI-Augmeneted testing (Scriptless) is the ability to trigger Appium Self-healing using an automation session as a baseline instead of a baseline manual session (introduced earlier). To use this feature, follow the below steps:

  • Run an Appium automation script on a device and note down the session ID. Optionally, you can set the capability kobiton:scriptlessEnable and to true to turn on Synchronous Inventory Capturing while running the script.

  • Add to the script the following capabilities before your next run:

    • kobiton:flexCorrect': set to `true to enable Appium self-healing.

    • kobiton:baselineSessionId: set this value to the ID of the baseline session you executed earlier.

  • Execute the updated script on different models and OS versions within the same platform (Android, iOS).

  • During execution, if an element is not found (due to changes in locators), the AI will select the best match element.

  • See any Appium Self-healing changes in Session Explorer and easily copy them to update the script if needed.

Appium Self-healing is only available in XIUM sessions; not supported in Basic Appium 2 sessions.

Native framework automation improvements and bug fixes

Several major improvements have been introduced to the Native Framework automation (XCUITest, UIAutomator, and Espresso):

  • Added JUnit test report for XCUITest, UIAutomator and Espresso. Report can be downloaded from Test Report in Session Overview.

  • Added more comprehensive Reset options before the test commences

    • FULL: Fully clears the application and its data.

    • DATA: Clears only the data. The application won’t be reinstalled if it’s already present. This option speeds up repeat tests where the application did not change.

    • NONE: Does not clear any data or the application. This is the fastest option to retest some existing data.

  • Bug fixes:

    • Test reports:

      • Corrected the total number of tests from the test runner.

      • Fixed inconsistencies in time unit between test case and test suite.

      • Ensured test report upload for terminated sessions.

      • Fixed unfriendly display name of test command.

      • Identified skipped tests instead of showing them as failures.

      • UIAutomator: Fixed test result cut off issue.

    • Test execution:

      • XCUITest: ensured test still executes when the test plan does not contain SkippedTests.

      • XCUITest: ensured connection loss recovery does not interrupt tests.

Network Payload Capture (NPC): Alternative proxy setup option for iOS/iPadOS

Previously, we introduced changes to the NPC proxy setup flow for iOS/iPadOS that requires all devices hosted by a Mac mini to be supervised by a single supervision profile.

For customers who cannot follow this requirement due to multiple supervision profiles, we have re-introduced the old manual method of NPC proxy setup for iOS/iPadOS.

A Mac mini host supports either the automatic proxy setup (via supervision) or the manual method.

Device list shuffler for different users

For Hybrid/On-Prem customers with hundreds of thousands of private devices (with many on the same OS) and high parallel manual sessions, devices near the top of the list are more likely to be picked than others causing high traffic on certain hosting machines and degrade their performance.

With this release, we introduced the Device shuffler feature to mitigate overuse of devices at the top of the list and help distribute load across Mac mini hosts. Devices of the same model/OS version are displayed in a shuffled order so users don’t see the same sequence. The shuffle occurs once per user; order remains consistent across logins and browser refreshes.

  • Does not apply to Public Cloud devices at this time.

  • This feature is only enabled for certain customers. Contact Kobiton Support if you want to enable this feature for your organization.

  • When sorting (OS version, Device Name, Friendly Name, Device Health):

    • List is first sorted by the selected option.

    • Then re-ordered by the shuffle mechanism.

Scriptless Improvements

  • Fail_to_init session errors related to picking device & launching existing apps.

  • Fix error Revisit has been panic during revisit execution.

  • Update whitelist URL for Safari on iOS 26 to increase test case accuracy for iOS 26 on Safari app.

  • Fixed an issue with XIUM that affects revisit session in Test Run: only one gesture can be performed at a time.

  • Exclude public devices from being selected from the Test Run creation page if the organization does not have public minutes.

General improvements and fixes

  • Fixed apps stuck in processing after uploading to Cloud App Repo.

  • Reduced the chance of temporary disconnection at the start of a session on some device models.

  • Fixed iOS devices becoming offline after service restart in passcode-enabled org.

  • Fixed passcode not generated for new Android devices in passcode-enabled org.

  • Fixed session never timing out if app re-signing failed during the session.

  • Fixed error in Appium script generation for sessions with some apps.

  • Fixed blurriness in manual session with Lightning mode.

  • Fixed Class Chain Locator in XIUM for iOS devices.

  • Fixed DTH-500 error when launching devices due to too many repeated failed requests.

  • Fixed horizontal swiping from outside to inside detection in manual season.