Android 用浓缩咖啡同时测试两种活动

Android 用浓缩咖啡同时测试两种活动,android,testing,integration-testing,android-espresso,Android,Testing,Integration Testing,Android Espresso,我正在为安卓课程的作业编写一个仪器测试。例如,我希望能够检查TextView是否正确定位在屏幕上。为此,我想将TextView的位置与参考实现中类似TextView的位置进行比较;大概是这样的: onView(带id(R.id.text\u视图)) .检查(IsBottomAligned)(onView(withId(R.id.text\u view\u solution)) 我遇到的问题是,R.id.text\u视图和R.id.text\u视图存在于不同的活动中。我创建了两个活动规则,一个用

我正在为安卓课程的作业编写一个仪器测试。例如,我希望能够检查
TextView
是否正确定位在屏幕上。为此,我想将
TextView
的位置与参考实现中类似
TextView
的位置进行比较;大概是这样的:

onView(带id(R.id.text\u视图))
.检查(IsBottomAligned)(onView(withId(R.id.text\u view\u solution))
我遇到的问题是,
R.id.text\u视图
R.id.text\u视图
存在于不同的活动中。我创建了两个活动规则,一个用于作业解决方案,一个用于学生提交:

@规则
public ActivityTestRule mSubmission=新ActivityTestRule(MainActivity.class);
@统治
public ActivityTestRule mSolution=新ActivityTestRule(MainActivitySolution.class);
以前,我只是简单地获取与上述规则相关的活动,并亲自遍历层次结构进行检查,但如果能够使用方便的方法,如
isBottomAlignedWith
,那就太好了。此外,我想切换到意式浓缩咖啡,因为这是我能找到的在横向环境中进行测试的唯一方法(我还需要做一些事情)


但是,由于某些原因,
onView
只会搜索最近创建的活动。因此,我可以在
MainActivitySolution
中找到视图,但不能在
MainActivity
中找到视图。是否有一种方法允许浓缩咖啡在两个活动中搜索视图?

好的,您在任何给定时间只能启动一个活动。因此答案是肯定的不,你不能对活动执行此操作。你尝试过片段吗?@VenomVendor你指的是浓缩咖啡还是
AndroidJUnit4
?因为我有两个
ActivityTestRule
s,只要我直接用
ActivityTestRule\getActivity
@VenomVendor使用
直接访问活动来测试它们,我就想到了fragments,但这会使这个作业变得复杂(这是第一个作业,所以我想让它尽可能简单)。实际上,我正在测试的活动只是一个底部选项卡栏包装器,根据选择的选项卡显示四个视图中的一个。如果有一种方法可以直接测试视图,这将解决我的问题,但是我可以看到的唯一方法()将视图包装在活动中。