我正在测试Espresso,我想测试2个项目:
代码:
@RunWith(AndroidJUnit4.class)
public class AsyncTest {
private static final String TEST_TEXT = "TEST_TEXT";
@Rule
public ActivityTestRule<MainActivity> mActivity = new ActivityTestRule(MainActivity.class);
@Test
public void testIfResultIsEmpty() {
Espresso.onView(ViewMatchers.withId(R.id.first_button))
.perform(ViewActions.click());
/* How do I check that text has populated? */
Espresso.onView(ViewMatchers.withId(R.id.random_joke))
.check();
}
答案 0 :(得分:1)
matches(isDisplayed())
至少会检查视图是否正在显示-一个人几乎不能检查一个随机笑话的文本,而其中一个人会假设一些随机文本...除非出于测试目的而加载特定文本,然后就可以知道它了,并且可以进行比较/匹配(如最近在RecyclerView答案中所述,ActivityTestRule
可用于传递ITEM_ID
,这样一个人就可以比较一个特定的项目的意见。)
onView(withId(R.id.random_joke)).check(matches(isDisplayed()));
并且不必使用Espresso,但可以先尝试findViewById()
然后再尝试assertNotNull()
。