从命令行批处理文件强制android测试在不同的模拟器上运行
如何在每个模拟器上从命令行运行android junit/robotium测试?我想确保我的测试在许多android操作系统版本和许多屏幕分辨率上运行 我想编写一个从windows命令行运行的批处理文件,以便在我安装的每个模拟器上反复运行我的测试套件 要从命令行运行,我可以执行以下操作: adb壳牌am仪器-w com.myapp.client.test/android.test.InstrumentationTestRunner 但这只是在默认模拟器上运行。如何强制该命令在已设置的所有模拟器上运行 理想情况下,批处理文件的外观如下:从命令行批处理文件强制android测试在不同的模拟器上运行,android,command-line,batch-file,robotium,Android,Command Line,Batch File,Robotium,如何在每个模拟器上从命令行运行android junit/robotium测试?我想确保我的测试在许多android操作系统版本和许多屏幕分辨率上运行 我想编写一个从windows命令行运行的批处理文件,以便在我安装的每个模拟器上反复运行我的测试套件 要从命令行运行,我可以执行以下操作: adb壳牌am仪器-w com.myapp.client.test/android.test.InstrumentationTestRunner 但这只是在默认模拟器上运行。如何强制该命令在已设置的所有模拟器上
编辑:找到解决方案。下面是我的批处理文件
set PORTRAIT=medium
set LANDSCAPE=large
:: launch emulator
emulator -avd android2.2
:: wait for emulator to load
adb wait-for-device
:: install apps?
:: run tests in portrait
adb shell am instrument -w -e size %PORTRAIT% com.myapp.client.test/android.test.InstrumentationTestRunner
:: run tests in landscape
adb shell am instrument -w -e size %LANDSCAPE% com.myapp.client.test/android.test.InstrumentationTestRunner
:: pull screenshots
adb pull /sdcard/ c:\
:: close/kill emulator (android bug here, so must use windows taskkill)
taskkill /IM emulator-arm.exe
我真的建议你找些像詹金斯这样的人来帮你处理这件事。您可以使用android emulator插件构建完整的API版本/屏幕大小矩阵,以运行测试