草庐IT

espresso-contrib

全部标签

android - 是否有将 Espresso 与 Lollipop (Android 21) 一起使用的解决方法?

尝试在带有Lollipop的Nexus7上使用Espresso(即GoogleInstrumentationTestRunner)运行与UI相关代码的测试会出现以下错误:java.lang.IllegalStateException:此消息无法回收,因为它仍在使用中。在android.os.Message.recycle(Message.java:279)在com.google.android.apps.common.testing.ui.espresso.base.UiControllerImpl.loopUntil(UiControllerImpl.java:468)在com.go

Android 模拟 Dagger2 注入(inject)依赖项以进行 Espresso 测试

我有一个严重依赖注入(inject)(dagger2)的应用程序。我想运行一个espresso测试,而不是让测试在整个应用程序中导航,然后登录到应用程序。我想开始我的teleActivity,并模拟登录管理器。但是在任何@test函数中,我们已经在调用onCreate时命中了空指针。如果我在启动Activity(如下所示)之前覆盖它,则该Activity为空。据我了解,切换下划线依赖项的能力是我们使用Dagger2的一个重要原因,否则它只是一个过度设计的单例。我如何覆盖、模拟或将注入(inject)切换到测试Dagger模块——这样我就可以创建这个简单的espresso测试。请注意,如

android - 在 Espresso 中访问 RadioButton 并选择它

我正在使用Espresso测试Android应用程序。我在尝试找到一种方法来访问和选择当前Activity的RadioButton(属于RadioGroup)时遇到了麻烦。有人有什么建议吗? 最佳答案 给定以下布局:使用以下内容编写一个新的测试方法:onView(withId(R.id.firstRadioButton)).perform(click());onView(withId(R.id.firstRadioButton)).check(matches(isChecked()));onView(withId(R.id.seco

android - 使用 Espresso 解锁模拟器屏幕

我正在开发我的第一个Android应用程序,并且正在设置CI服务器。我的Espresso测试在我的机器上运行良好,但travis出现以下错误java.lang.RuntimeException:Waitedfortherootoftheviewhierarchytohavewindowfocusandnotberequestinglayoutforover10seconds.看来我需要在运行测试之前解锁模拟器屏幕。为此,我必须使用所需的权限向src/debug添加list,然后使用以下命令解锁屏幕:KeyguardManagermKeyGuardManager=(KeyguardMan

java - 在 Dalvik 运行时设备上运行 Espresso 仪器测试的问题

我遇到了与FragmentActivitycannotbetestedviaActivityInstrumentationTestCase2类似的问题顶级解决方案的问题仅适用于使用Eclipse构建系统。我正在为我的项目使用Gradle。在运行ART运行时的Nexus5上,我的Espresso仪器测试运行完美。当我在Dalvik运行时或模拟器上使用Nexus4时,我遇到了在测试框架之外运行应用程序时不会发生的异常。java.lang.NoClassDefFoundError:com.packagename.fragment.ProgressDialogFragment在日志中,我发现这

android - Espresso 复选框已选中

我是Espresso的新手,我遇到了这个问题:如何检查是否选中了某个复选框?我从复选框创建了一个匹配器,然后用espresso单击它。我阅读了一些关于使用getInstrumentation()的教程,但我只能使用InstrumentationRegistry.getInstrumentation()并且它不起作用。一般来说,如何从Matcher对象创建真正的小部件,如Button、CheckBox等?感谢您的帮助。 最佳答案 点击后你可以用这样的表达式检查复选框是否被选中:onView(withId(R.id.checkbox))

Android Espresso listView 滚动到

我有一个list_view,我想对其进行测试。list_view项目布局为RelativeLayout,适配器为ItemAdapter。此代码工作正常(包含DaftPunk的项目可见):@TestpublicvoidlistViewTest(){Espresso.onView(withText("DaftPunk")).perform(click());}这两种变体都失败了:(滚动开始,来到项目然后失败,错误就在这道题的最前面。)@TestpublicvoidlistViewTest(){Espresso.onData(artistWithName("ImagineDragons"))

android - 如何使用 Espresso 测试保存和恢复 android Activity 的状态?

有没有办法以编程方式测试Activity的保存和恢复状态代码?我的意思是这样做:Howtotestcodebuilttosave/restoreLifecycleofanActivity?但以自动化的方式。我已经测试了activity.recreate()方法,这几乎是我正在搜索的方法,但实际上它不会像我终止进程那样重置我的Activity字段。所以即使我没有在我的onCreate方法中实现恢复内容,我的测试也可以通过(因为我的字段没有改变...)。我目前正在玩Espressov2,我想知道这是否可能通过玩InstrumentationRegistry.getInstrumentati

android - 无法解析 com.android.support.test :runner:1. 0.0 和 'com.android.support.test.espresso:espresso-core:3.0.0'

这是我的build.gradle(app)buildscript{repositories{maven{url'https://maven.fabric.io/public'}}dependencies{classpath'io.fabric.tools:gradle:1.+'}}applyplugin:'com.android.application'applyplugin:'io.fabric'repositories{maven{url'https://maven.fabric.io/public'}}android{compileSdkVersion26buildToolsVe

android - 如何在 Espresso 中打开标签页

如何在Espresso测试中打开选项卡?我尝试执行Espresso.onView(ViewMatchers.withId(R.id.practice_results_tab)).perform(ViewActions.click());,但这不起作用。在该代码中,我打开了此选项卡的布局。有XML文件:我应该使用什么ID来打开标签页?logcat错误:Causedby:java.lang.RuntimeException:Actionwillnotbeperformedbecausethetargetviewdoesnotmatchoneormoreofthefollowingconst