If I use any cloud provider (eg SauceLabs, AWS Device Farm etc) for testing my native android and iOS apps, is there a way to determine if the test was being run on a real device or an emulator.

I need this check to verify the authenticity of the results. My appium code is written in Java. Is there any library or method I can call that verifies if the test is being run on a real device or an emulator?

2 Answers 2


Not sure about any library existence, but from the official SauceLabs response: one can use TestObject to utilize real devices and SauceLabs main resource to conduct testing on emulators/simulators. Hopefully this helps.


Here are the device lists for AWS DeviceFarm, Xamarin Test Cloud, and SauceLabs TestObject. I have worked with each and they all accept a device identifier (defined in desired capabilities or via command line param). You get this Name or ID by picking from a list that clearly labels if it is a real device. I haven't found/looked for any emulators/simulators in my use of the products so I can't say if they even have them.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.