我无法执行“click()”来跳过屏幕
Posted
技术标签:
【中文标题】我无法执行“click()”来跳过屏幕【英文标题】:I can't perform "click()" to skip a screen 【发布时间】:2017-11-13 16:11:28 【问题描述】:Espresso Recorder 给我写了下一段代码:
ViewInteraction appCompatTextView2 = onView(allOf(withId(R.id.skipBtnTextView_BirthdayActivity), withText("Skip this step"), childAtPosition(allOf(withId(R.id.skipLayout_BirthdayActivity), childAtPosition(withClassName(is("android.widget.LinearLayout")),4)),1),isDisplayed()));
appCompatTextView2.perform(click());
运行后不起作用。我将其替换为:
onView(withId(R.id.skipBtnTextView_BirthdayActivity)).check(matches(withText("Skip this step")));
onView(withId(R.id.skipBtnTextView_BirthdayActivity)).perform(click());
但它也失败了。
android.support.test.espresso.PerformException: Error performing
'single click - At Coordinates: 539, 1359 and precision: 16, 16' on
view 'with id: com.ingenio.keen:id/skipBtnTextView_BirthdayActivity'.
谁能帮帮我?
【问题讨论】:
你能解释更多吗?你想跳过一个屏幕去另一个活动还是什么? @docbigolo 是的,完全正确。以前,我注册了一个新用户,导航到选择生日日期的屏幕并希望跳过它以进入主屏幕......但是在单击“跳过此步骤”按钮的步骤中我失败了。不知道,问题出在哪里……早先我并没有坚持这么简单的交易…… 【参考方案1】:首先你应该像这样定义你的按钮/文本视图等:
Button button=(Button)findViewById(R.id.button);
你应该在你的 layout.xml 中给你的按钮一个 id
那么你应该写一个 setOnClickListener:
button.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
Intent intent=new Intent(YourActivity.this,DestanationActivity.class);
startactivity(intent);//you will go to home screen activity with this
);
【讨论】:
以上是关于我无法执行“click()”来跳过屏幕的主要内容,如果未能解决你的问题,请参考以下文章
尝试添加 --skip-broken 来跳过无法安装的软件包 或 --nobest 来不只使用最佳选择的软件包
使用 Nokogiri 和 Selenium,如果驱动程序无法执行命令,是不是可以跳过它?