浓缩咖啡:单击ListView页脚中的按钮上的操作



listView具有这样的页脚(footer.xml):

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="match_parent"
                android:layout_height="match_parent">
    <Button
        android:id="@+id/btn_cancel"
        style="@style/MyApp.Form.Component.Button"
        android:text="@string/action_cancel"/>
    <Button
        android:id="@+id/btn_confirm"
        style="@style/MyApp.Form.Component.Button"
        android:text="@string/action_next"/>
</RelativeLayout>

在录制脚本时(通过Android Studio中的"记录咖啡测试")我收到以下代码以单击按钮'Next':

private void clickNext() {
    ViewInteraction appCompatButton2 = onView(
            allOf(withId(R.id.btn_confirm), withText("Next"),
                    withParent(childAtPosition(
                            withId(R.id.lv_products), 5))));
    appCompatButton2.perform(click());
}

它效果很好,但是...当测试在以低分辨率的设备上运行时,我会出现错误:

android.support.test.espresso.performexception:错误执行 "单击" on View"'(带有ID: com.comarch.msc.msc.emulator:id/btn_confirm,带有文本:是" next"和 有父母匹配:父母在父母的位置5的孩子: com.comarch.msc.msc.emulator:id/lv_products'。(...)由: java.lang.runtimeException:不会执行操作,因为 目标视图与以下一个或多个约束不匹配: 视图区域的至少90%显示给用户。

如何自定义较低分辨率的测试?

问题是整个页脚没有在屏幕上显示(如果显示为一部分)。您可以在单击按钮之前尝试执行滑动操作。或者,如果滑动没有帮助,请检查为什么您在较小的屏幕上没有看到它。

相关内容

  • 没有找到相关文章

最新更新