gpt4 book ai didi

android - Espresso : click() on SwitchCompat not working

转载 作者:行者123 更新时间:2023-11-30 00:36:11 26 4
gpt4 key购买 nike

我有一个 TabLayout 和一个 ViewPager,在第 3 页有一个 SwitchCompat 我想执行一个 click() 打开,但它什么也不做。

@Test
public void checkSummaryPageUpdates_worksCorrect() {

onView(withId(R.id.view_pager)).perform(swipeLeft());
onView(withId(R.id.view_pager)).perform(swipeLeft());

onView(withId(R.id.gs_switch)).check(matches(isDisplayed()));
onView(withId(R.id.gs_switch)).perform(click());
onView(withId(R.id.gs_switch)).check(matches(isChecked())); // AssertionFailed

}

这是错误

android.support.test.espresso.base.DefaultFailureHandler$AssertionFailedWithCauseError: 'with checkbox state: is ' doesn't match the selected view. Expected: with checkbox state: is true

SwitchCompat 似乎具有以下属性:

Got: "SwitchCompat{id=2131689643, res-name=gs_switch, visibility=VISIBLE, width=996, height=100, has-focus=false, has-focusable=true, has-window-focus=true, is-clickable=true, is-enabled=true, is-focused=false, is-focusable=true, is-layout-requested=false, is-selected=false, root-is-layout-requested=false, has-input-connection=false, x=0.0, y=0.0, text=GLÜCKSSPIRALE +5,00 €, input-type=0, ime-target=false, has-links=false, is-checked=false}"

错误说 Switch 没有被检查,但问题似乎发生在之前,导致 Switch 一直没有被检查,perform(click()) 似乎什么也没做。

最佳答案

我发布了一个替代解决方案,该解决方案涉及创建自定义 ViewAction 来设置开关状态(或与此相关的任何 Checkable),而不是使用单击操作。这确保您的操作与状态无关。

https://stackoverflow.com/a/39650813/1947601

因此,无论之前是否检查过,您都可以保证它会切换到您期望的状态。

关于android - Espresso : click() on SwitchCompat not working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43384696/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com