Appium Testing Framework

Typically testing is started with developing tests locally running them using the Appium client against a device in Bitbar Testing cloud. Once the tests work on one device it’s time to move testing against multiple devices. Here tests are executed in parallel against all chosen devices.

Client Side Execution

The client-side execution is Appium testing on local machine against a device connected to your computer or to a device in the cloud. Despite you run the tests in our infrastructure and on our devices, the control over the test execution is on your side and you see logs, screenshots etc. on your machine. This approach allows you to run one test against one device at a time. The downside is there needs to be an open connection from your machine to our cloud for the whole duration of the test. There are additional testdroid_* desired capabilities that allow for additional configurations of your client side Appium tests when run against Bitbar Testing cloud.

There are examples on Github in different programming languages to help set up the environment and run your first tests.

Server Side Execution

In server-side execution you upload both your application and test suite to Bitbar Testing/Private cloud, and then select the device group and possible additional configurations for the test run. Test execution is started in Bitbar Testing in parallel with all the devices in the selected group. Test results and all related artifacts (logs, screenshots, video recordings etc) are stored and visible in Bitbar Testing/Private cloud dashboard. This provides a much easier and robust way to start, manage and review tests. All test assets and testing is done in one place.

When using server-side Appium execution, you can run standard Appium tests on hundreds of devices in parallel without any need for changes on the client side.

The following picture illustrates the difference between client-side and server-side executions:

Environment Setup

Depending on your test machine (PC, Mac or Linux) and the tested app’s environment (Android or iOS), Appium setup is different. Our setup guide is a good starting point.

Bitbar Testing Desired Capabilities

Bitbar has a set of own desired capabilities that are used for user identification and device selection in Bitbar Testing cloud.

Requirements for .ipa

Here is the procedure to create your iOS mobile application (.ipa files) to run your app in Bitbar Testing.