例如,当我们将Espresso与listview一起使用时,我们应该在使用它之前填充它吗?我无法弄清楚如何正确地做到这一点。
我的意思是通过Espresso本身可以实现,还是需要在带有@Before注释的方法中进行设置。
由于
答案 0 :(得分:0)
你似乎像我一样喜欢Espresso的新秀。 以下是我对Espresso流程的理解:
1. When you make a test, first you need to have a rule:
@Rule
public ActivityTestRule<MainActivity> activityRule = new ActivityTestRule<>(MainActivity.class);
2. Then you create a test method:
@Test
public void helloWorld()
{
onView(withId(R.id.txtHello)).check(matches(withText("Hello World!")));
}
(如果MainActivity包含一个id为R.id.txtHello的视图,它包含文本“Hello World!”,则测试将通过)。
现在,如果您运行测试,MainActivity类将打开并将所有内容加载到类中。 Espresso将等到活动加载所有内容。一切都完成后,测试就会运行。
所以不要担心有关加载过程的任何事情,因为只有当UIthread为空时才会启动Espresso测试。
祝你好运!答案 1 :(得分:0)
“onView”方法用于引用“常规”视图,如TextView,EditText和Button。但要引用像ListView和RecyclerView这样的“特殊”视图,您需要使用“onData”方法。
这是关于“onView”用于具有在屏幕上完全可见的数据的视图。当特定数据项可能不可见并且可能需要用户/测试滚动到它时,使用“onData”方法。