根据 Robotium 文档,我们无法编写跨两个应用程序的测试用例,它说“测试项目被锁定到 targetPackage。Android 平台不允许超出该目标包。因此您将需要 2 个测试项目,每个应用程序一个。”
目前我想做的是猴子工具。我想在屏幕上随机触发操作以彻底触发应用程序的功能。在遍历过程中,程序流程有时会脱离应用程序,然后JUnit或Robotium失去对程序的控制。我想知道有什么方法可以将程序流程引导回应用程序吗?或者有什么方法可以同时控制多个应用程序?
谢谢!
最佳答案
编写一个简单的应用程序可以轻松做到这一点,该应用程序访问 Activity 管理器并每 2 秒读取一次应用程序或另一个应用程序中作为外部服务 Activity 的 Activity 。
http://developer.android.com/reference/android/app/ActivityManager.html
基本上,检查 ActivityManager.RecentTaskInfo() 并检查启动它的 Activity 组件是否是您可以接受的组件。然后,为了不影响您的普通用户,.isUserAMonkey()
返回 bool 值 true。
如果 Activity 不是您想要的,请写:
else
startService(new Intent(this, TheService.class));
或
else
startActivity(new Intent(this, TheActivity.class));
关于android - 如何编写跨越 2 个应用程序的 Android 测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13386561/