我正在为Android应用程序编写单元测试。
我想看看点击按钮是否会打开正确的子活动。
有一个主要活动,其中有两个按钮,每个按钮在点击时启动一个子活动。
我认为问题的发生是因为这些是子活动。
所以,这是我的单元测试用例中的测试方法。
@UiThreadTest
public void testActivityLaunch() {
//Launches a subActivity
theButton.performClick();
ActivityManager am = (ActivityManager) mActivity.getSystemService(Service.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> procInfos = am.getRunningAppProcesses();
List<ActivityManager.RecentTaskInfo> processes = am.getRecentTasks(5, ActivityManager.RECENT_WITH_EXCLUDED);
}
我设置了一个断点并查看了procInfos和进程,但我看不到subActivity的名称。
我在正在测试的应用程序中创建了一个类似的方法,即使在启动后,我仍然无法在列表中看到子活动的名称。
我只需要访问进程列表中的子活动名称,就可以知道按钮点击是否正确启动了。还有其他方法可以测试吗?
我不想使用任何其他框架,例如Robotium,而不是ADK提供的框架。
编辑:毕竟我不确定这是否是一项子活动。我刚读了一篇文章说如果用startActivityForResult()启动它就被认为是一个子活动。在按钮上单击监听器我用startActivity()启动它。