AppiumTestDistribution / appium-device-farm

This is an Appium 2.0 plugin designed to manage and create driver sessions on available devices.
https://devicefarm.org
Other
311 stars 97 forks source link

Support for Robot Framework and Parallel Execution of Same Tests on All Devices #504

Open keyur2maru opened 1 year ago

saikrishna321 commented 1 year ago

https://github.com/AppiumTestDistribution/appium-device-farm/issues/191#issuecomment-1240350072

saikrishna321 commented 1 year ago

How to run same tests on all connected devices? I am using device farm with robot framework and the issue I am facing is that I am unable to run the same tests on all connected devices simultaneously. Even after providing the UDID while creating an Appium session, it still randomly gives ECONRESET error after first few commands or the tests starts on device 1 and then that session fails but same device is picking up another test from the device farm, which was supposed to run on some other device.

saikrishna321 commented 1 year ago

@saikrishna321 @sudharsan-selvaraj To get this done, we should expose API's that can get free devices and block on plugin side. So that client code can use that device information as part of the createSessions. Thoughts?

rajvinodh commented 1 year ago

@saikrishna321 @sudharsan-selvaraj Yes. If we are able to get a free device and block it in plugin end, it would help us in scaling same devices for other automation tools. Basically I run all Espresso and Appium tests on same system. So if there is a way we can send free devices info to espresso tests we will be able to make maximum use of it.

Also another use case, whenever a device is having issues (Like Internet disconnected, app level inconsistent on particular device) or user needs the device manually. User can hit the route and make the device busy and once his requirement is fulfilled he could make them available.

saikrishna321 commented 1 year ago

@rajvinodh >> user needs the device manually

In this the user will unplug the device right? If so, then the device list will be refreshed and device wont be shown

rajvinodh commented 1 year ago

@rajvinodh Acknowledged, point that I wanted to convey is. When ever user wants to block execution on particular device, he can use these API's. Basically devices would be connected to some other machines, removing them and connecting would be an over head.

saikrishna321 commented 1 year ago

@rajvinodh with latest version we have option from dashboard to block the device.

When ever user wants to block execution on particular device, he can use these API's

rajvinodh commented 1 year ago

Great, Thanks for updating here.