我的Android应用程序的某些活动与手机和平板电脑略有不同。我正在使用JUnit,Android SDK和Robotium编写自动化。基于连接设备选择性执行测试的最佳方法是什么?
答案 0 :(得分:0)
您可以在测试期间检测您的测试设备是手机还是平板电脑。因此,您的测试应用程序将包含:
您的测试类可以调用适当的功能来测试手机或平板电脑。
希望,这有帮助。
答案 1 :(得分:0)
最简单的方法是使用@PhoneOnly注释标记仅限手机的测试,使用@TabletOnly注释标记平板电脑,然后在不同的设备类型上运行不同的adb命令:
要执行此操作,请查看http://developer.android.com/reference/android/test/InstrumentationTestRunner.html
上的文档具体地
使用给定注释过滤测试运行到测试:adb shell am instrument -w -e annotation com.android.foo.MyAnnotation com.android.foo/android.test.InstrumentationTestRunner
如果与其他选项一起使用,则生成的测试运行将包含 两种选择的结合。例如“-e size large -e annotation com.android.foo.MyAnnotation“将仅运行两个测试 LargeTest和“com.android.foo.MyAnnotation”注释。
将测试运行过滤到没有给定注释的测试:adb shell am instrument -w -e notAnnotation com.android.foo.MyAnnotation com.android.foo/android.test.InstrumentationTestRunner