iosappiumbrowserstack

How can I alter iOS App Settings For Browserstack or Local Testing Via Appium?


I'm setting up automated tests against an iOS application using Appium and Browserstack. My iOS app has an application setting (in Settings > MyApp) to change the base URL of the API used to interact with our servers. On a physical device, I can change this to target any test environment I want. However, I cannot determine how I could alter this for testing in an automated way on Browserstack. It seems that in Browserstack's App Live, the setting app automatically closes when you try to access it (presumably since these are Browserstack's physical devices, and they don't want you mucking in settings).

How could someone achieve this, if at all? The internet seems strangely silent on App Settings in iOS. While I'm very experienced with Selenium/web automation, this is my first time automating a mobile app.

If this is not possible, it seems a couple options may be to make this a build-time setting, or set up a proxy to re-route the request from the default API for testing (using BrowserStackLocal proxy settings)

Edit:

Found some posts on "Switching apps" in appium that make me pessimistic. It seems that iOS won't let you switch apps in this way. Hoping there is another option


Solution

  • You will not be able to access the settings on an iOS device on BrowserStack. You can access the settings for an Android device.