TestArchitect and Appium
TestArchitect allows you to run automated tests on real devices in WebDriver based cloud services (Appium enabled).
TestArchitect supports testing mobile web applications on the following platforms:
- Safari on iOS devices
- Google Chrome on Android devices
You can run your automated tests as Appium client on your local computer. This is the approach supported by TestArchitect, when you typically would automate mobile web applications on cloud devices in the specific Remote TestKit cloud service. (Learn more.)
Your automated tests can also be run in cloud. Tests are run against the rented devices as soon as they become available. (Learn more.)
Automation in Appium is performed in the context of a session. Clients initiate a session with a server in ways specific to each library, but they all end up sending a POST /session request to the server, with a JSON object called the desired capabilities object. At this point the server will start up the automation session and respond with a session ID which is used for sending further commands.
Desired capabilities are a set of keys and values sent to the Appium server to tell the server what kind of automation session should be starting up (learn more). There are also various capabilities which can modify the behavior of the server during automation.
- We might set the platformName capability to iOS to tell Appium that we want an iOS session.
- Or we might set the browserName capability to Chrome in order to ensure that Google Chrome will be invoked to run automated tests.
Along with the capabilities of Appium, some WebDriver based cloud services might have their own set of capabilities.
In TestArchitect, desired capabilities are defined through the assign cloud device built-in action (learn more), or in a JSON file (learn more).
Creating mobile web application test
Explains general workflow to test mobile web applications on iOS and Android cloud devices in WebDriver cloud based services.