如何使用Espresso Android点击选项菜单上的索引

前端之家收集整理的这篇文章主要介绍了如何使用Espresso Android点击选项菜单上的索引前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用以下代码调用选项菜单
openActionBarOverflowOrOptionsMenu(getInstrumentation()getTargetContext());

之后,菜单出现了.现在我按其文本点击菜单项,这很好.

我已经注意到的问题是主题,可以改变,假设用户是否为不同的客户端使用多种语言.所以在长时间的测试中它没用.

出于这个原因,我想使用Espresso点击特定测试用例的特定索引.

设置菜单似乎没有ID.所以我不知道如何点击该菜单中的特定项目“索引”,假设我想点击第四项.

你能帮我解决一下吗?

解决方法

所以,我会尝试一步一步地解释它:

1)您通过以下方法打开菜单

openActionBarOverflowOrOptionsMenu(getInstrumentation().getTargetContext());

我认为你可以通过这个代码打开相同的菜单

onView(withContentDescription("More options")).perform(click());

2)你想点击Id上的项目:

首先,为什么不想使用’strings.xml’.
使用智能手机设置语言自动更改从此文件提取的文本,但前提是您在准确的翻译文件之前准备好了.

代码看起来像这样:

openActionBarOverflowOrOptionsMenu(getInstrumentation().getTargetContext());
onView(withText(R.string.help)).perform(click());

要么

onView(withContentDescription("More options")).perform(click());
onView(withText(R.string.help)).perform(click());

当然,你仍然可以通过它的id来捕捉视图,就像@Rodrigo说的那样.比代码更像是这样的:

onView(withContentDescription("More options")).perform(click());
onView(withId(R.id.help_item)).perform(click());

请记住,在你的xml文件中你可以为每一个’view’声明android:id,android:text或android:contentDescription.

猜你在找的Android相关文章