草庐IT

espresso-contrib

全部标签

android - 在 Espresso 中,指定要使用当前可见的 AdapterView

在一个Activity中,我有一个带有2个选项卡的ViewPager:“ALL”和“Filtered”。两个页面都使用相同的Fragment来显示数据,不同之处在于“Filtered”页面按某些条件过滤数据。我想点击“全部”页面(它可能也存在于“过滤”页面)中的一个项目,如果我这样做:onData(transactionWithId(960L)).perform(click());作为回应,我得到:AmbiguousViewMatcherException:'isassignablefromclass:classandroid.widget.AdapterView'matchesmul

android - Espresso : How to select element on webview using text

我正在使用Espresso编写一些UI测试用例。我的应用程序包含一个webview,我可以使用以下使用元素ID查找元素的代码在webview内的按钮上执行webClick:onWebView().withElement(findElement(Locator.ID,"expandbtn")).perform(webClick());假设webview有一个带有文本“Expand”的按钮。是否可以使用按钮上的文本而不是定位器ID来执行webClick? 最佳答案 是的,有一种方法可以使用按钮上的文本点击网络元素。您可以尝试使用Xpat

android - 如何使用 Espresso 检查 TextinputLayout 的错误

我希望能够针对设置了错误的TextInputLayoutView运行匹配器。onView(withId(R.id.myTextInputLayout)).check(matches(withText('myError')));withTest()似乎不适用于TextInputLayout错误消息。还有其他人知道该怎么做吗?感谢您的帮助。 最佳答案 实现自定义ViewMatcher以测试不支持开箱即用的View。这是TextInputLayout的withError匹配器的示例实现publicstaticMatcherwithErro

android - 检查 Android Espresso 框架中的 DatePicker 日历值

我有一个包含两个DatePicker控件和一些文本输入和按钮的Activity。我想用Espresso测试一些场景:将日期设置为第一个DatePicker。设置一些文本和点击按钮触发我的业务逻辑并将日期设置为第二个DatePicker。检查第二个DatePicker的日期。在第3步中,我想执行类似onView(withId(R.id.end_date_picker)).check(matches(withText("25-01-2017")));的操作。我可以使用什么代替withText来检查DatePicker日历/日期值?感谢您的帮助。 最佳答案

android - 如何使用 Espresso 测试在选项卡布局中选择特定的选项卡位置

我有一个带View寻呼机的选项卡布局。我正在使用Espresso来测试我的android应用程序。在我以前的项目中,我使用选项卡标题来执行单击以选择选项卡位置,如下所示。Espresso.onView(ViewMatchers.withText("MAP")).perform(ViewActions.click());现在我有114个标签页。所以我不能使用上述方法随机选择这些选项卡进行测试。有什么办法可以按位置选择标签。我已经检查了其他解决方案,但没有一个对我有帮助。 最佳答案 应该可以使用自定义ViewAction。像这样:fun

android - 如何在 Espresso 测试中调用自定义 View 的方法?

我有一个自定义View,我需要在该View上调用特定方法来打开Activity。在Espresso测试中执行此操作的正确方法是什么?我只需要扩充此View还是需要编写自定义ViewAction? 最佳答案 您可以像这样创建自定义ViewActionpublicclassMyCustomViewActionimplementsViewAction{@OverridepublicMatchergetConstraints(){returnisAssignableFrom(YourCustomView.class);}@Overridep

android - 如何使用 Espresso 打开抽屉导航?

我试过DrawerActions.open()但它显示未定义。还有其他方法可以访问抽屉导航吗??请提出建议。espresso的DrawerActions类有问题,我无法查看它。如果您有任何想法,请分享。 最佳答案 检查您的build.gradle文件中是否缺少espresso-contrib库。androidTestImplementation'com.android.support.test.espresso:espresso-contrib:3.0.2'如果你正在使用androidx,androidTestImplementat

android - 使用 Espresso 时出现 NullPointer 异常

我正在尝试使用Espresso。但是我得到了这个错误,如果我遗漏了一些代码,我就没有。任何想法将不胜感激。错误日志:java.lang.NullPointerException:Noinstrumentationregistered.Mustrununderaregisteringinstrumentation.atcom.google.android.apps.common.testing.testrunner.util.Checks.checkNotNull(Checks.java:28)atcom.google.android.apps.common.testing.testru

android - 用于嵌套 RecyclerView 的 Espresso 匹配器

所以这是我的层次结构的分割:RecyclerView-->LinearLayout-->RecyclerView-->FrameLayout->FrameLayout截图如下:我希望能够验证显示文本的FrameLayout。这是我到目前为止所尝试的:onView(withRecyclerView(R.id.container_list).atPositionOnView(0,R.id.row_content)).check(matches(withRecyclerView(R.id.row_content).atPositionOnView(0,R.id.info_field))).c

android - Espresso 测试中的 Mocking Intent Extras

我正尝试在Espresso中启动Activity。问题是我想将模拟的额外内容添加到我用来启动Activity的Intent中。这是示例。@RunWith(AndroidJUnit4.class)publicfinalclassNiceActivityTester{@RulepublicfinalActivityTestRuleactivityRule=newActivityTestRule(NiceActivity.class,true,false);@TestpublicvoidjustStartPlease(){NiceThingniceThing=Mockito.mock(Nic