Testing multiple Android devices on one machine

微笑、不失礼 提交于 2019-12-09 11:47:50

问题


I have two different Android devices plugged into the same machine. What I would like to do is to target each device and execute a test on it separately.

Unfortunately, it seems as if I need to unplug one of the devices to run the test each time, because if I don't, I receive the following error:

error: more than one device and emulator

Does anyone know of a work-around for this issue so that I can simply keep both devices plugged in and run my tests?


回答1:


You need to set ADB_DEVICE_ARG environment variable to the serial number of your device as returned by adb devices.

So to add on to Robert's answer:

$ adb devices
List of devices attached 
emulator-5554  device
emulator-5556  device
emulator-5558  device

$ ADB_DEVICE_ARG=emulator-5554;calabash-android run yourapk.apk

If you need to run the same Calabash test at the same time on multiple devices, better run them from separate root folders, or specify the result in different folders so that the results don't get mixed up.




回答2:


You can specify the targeted device on the adb command with -s

1) Get the device serialNumber by doing

$ adb devices 
List of devices attached 
emulator-5554  device
emulator-5556  device
emulator-5558  device

2) Pass in the serialNumber into the adb command with -s argument

$ adb -s <serialNumber> <command> 

For example

$ adb -s emulator-5556 install helloWorld.apk



回答3:


The below command works for me:

calabash-android run your_app.apk ADB_DEVICE_ARG=<your_device_id>

Hope that help



来源:https://stackoverflow.com/questions/13613660/testing-multiple-android-devices-on-one-machine

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!