当前位置:  开发笔记 > 编程语言 > 正文

Android系统.浓咖啡.如何点击带文字的微调项目?

如何解决《Android系统.浓咖啡.如何点击带文字的微调项目?》经验,为你挑选了1个好方法。

我正在尝试编写测试,按文本执行单击旋转器项目.

我的测试包含以下几行:

onView(withId(R.id.spn_trans_type)).perform(click());
onData(anything()).inAdapterView(withId(R.id.spn_trans_type)).onChildView(allOf(withId(textViewIdToTest), withText(expectedText))).perform(click());

但有例外: NoMatchingViewException: No views in hierarchy found matching: with id: com.rirdev.aalf.demo:id/spn_trans_type

我的问题是:如何找到微调器适配器视图?换句话说,我应该在adapterView()方法中添加什么?



1> piotrek1543..:

我已经找到了这个答案:

替换withText()withSpinnerText()

onView(withId(spinnerId)).perform(click());
onData(allOf(is(instanceOf(String.class)), is(selectionText))).perform(click());
onView(withId(spinnerId)).check(matches(withSpinnerText(containsString(selectionText))));

参考:https: //code.google.com/p/android-test-kit/issues/detail?id = 85

来自: Android Espresso检查选定的微调文本

所以不要使用有点复杂:

onData(anything())
    .inAdapterView(withId(R.id.spn_trans_type))
    .onChildView(allOf(withId(textViewIdToTest), withText(expectedText)))
    .perform(click());

也许你应该使用

onData(allOf(is(instanceOf(String.class)), is(selectionText)))
    .perform(click());
onView(withId(spinnerId))
    .check(matches(withSpinnerText(containsString(selectionText))));

selectionText您的预期字符串值和视图spinnerId的ID 将在何处Spinner.

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有