I have strange a phenomenon where I try to run a test of two devices,where they should perform a login to the app, and then one sends a message to the other.
In fact what happens is both instances of the app are loaded on the same device, even though the desiredCapablities passed to Appium are of the other device.
Additionally, When I run a simple login test, and pass all the parameters of the smartphone device, still as long as the SM-T530 tablet is connected, the app will load and perform the test on it. Only when I disconnect it, Appium loads and runs it on the smartphone.
I have been struggling with this for days. Is this a known issue?
I will happily supply any logs/screenshots or other information you may require.
Thanks for you reply! But actually this is exactly the last thing I tried yesterday before posting here, and unfortunately it did not make any difference.
So apparently it is not possible running tests vs an Appium server connected to more than one device. Either two machines or virtual machines are necessary. 1 Machine -> 1 Appium -> 1 Device.
I thought since Appium Server identifies a device by uid it could automate several devices connected to the same machine. Guess I was wrong?
Can you post some sample code for how you’re constructing the DesiredCapabilities objects? I have a set-up for parallel execution where each Appium server instance runs on 1 device. I specify the exact device the server uses by relating the “udid” capability to the device ID retrieved by ADB.