如何编写跨越2个以上应用程序的Android测试用例

如何编写跨越2个以上应用程序的Android测试用例,android,robotium,android-testing,Android,Robotium,Android Testing,根据Robotium文档,我们无法编写跨越两个应用程序的测试用例,它说“测试项目锁定在targetPackage上。Android平台不允许超出该目标包。因此,您需要两个测试项目,每个应用程序一个。” 目前我想做的是像猴子工具。我想在屏幕上随机触发动作,以彻底触发应用程序的功能。在遍历过程中,程序流有时会离开应用程序,然后JUnit或Robotium会失去对程序的控制。我想知道是否有任何方法可以将程序流引导回应用程序?或者有什么方法可以让我同时控制多个应用程序 谢谢 编写一个简单的应用程序很容易

根据Robotium文档,我们无法编写跨越两个应用程序的测试用例,它说“测试项目锁定在targetPackage上。Android平台不允许超出该目标包。因此,您需要两个测试项目,每个应用程序一个。”

目前我想做的是像猴子工具。我想在屏幕上随机触发动作,以彻底触发应用程序的功能。在遍历过程中,程序流有时会离开应用程序,然后JUnit或Robotium会失去对程序的控制。我想知道是否有任何方法可以将程序流引导回应用程序?或者有什么方法可以让我同时控制多个应用程序


谢谢

编写一个简单的应用程序很容易,它可以访问Activity Manager,并每隔2秒读取作为应用程序或其他应用程序中的外部服务而处于活动状态的内容

基本上,检查ActivityManager.RecentTaskInfo()并检查启动它的活动组件是否符合要求。然后,为了不影响正常用户,
.isUserAMonkey()
返回布尔值true

如果活动不是您想要的,请写下:

else
startService(new Intent(this, TheService.class));


如果您只想在Android 4.1及以上版本上进行测试,那么可以使用新的UI Automator框架,它支持跨多个软件包进行测试

一些信息:

else 
startActivity(new Intent(this, TheActivity.class));