Calabash Android:如何在所有连接的设备上运行或执行测试?

时间:2014-06-26 18:55:10

标签: android testing automated-tests functional-testing calabash

我知道我可以使用

在多个设备上触发测试

ADB_DEVICE_ARG=<serial_number> TEST_SERVER_PORT=<port_number> calabash-android run <apk>

但这是非常手动的,我必须手动启动一个新的Terminal实例并为每个设备键入这些命令。

有没有办法可以触发Calabash测试在所有连接的设备上运行?

1 个答案:

答案 0 :(得分:2)

您可以使用sh脚本实现这一点,如

NUM=`expr $(adb devices | wc -l) - 1`
DEVICES_LIST=`adb devices | tail -$NUM | awk -F " " '{print $1}'`
PORT_NUMBER=34777

for DEVICE in $DEVICES_LIST; do \
  ADB_DEVICE_ARG=$DEVICE TEST_SERVER_PORT=$PORT_NUMBER calabash-android run <apk>
  PORT_NUMBER=`expr $PORT_NUMBER+1`
done