草庐IT

espresso

全部标签

android - Espresso 中的 intending 与 intended 之间有什么区别?

自从我学习Espresso以来已经2周了,我无法理解intending和intended。什么时候使用intending和intended?提供的示例和在线教程没有帮助,研究网络对我弊大于利。在语义上,对于智力引用,为什么它是intend-ing和另一个intended,这增加了更多的困惑。这是另一个谷歌命名错误还是只是我?这两种方法真的没有意义。我误解了它的用法。IwantedtotestifmyactivityAlaunchedactivityB.而已。这是我的代码:@TestpublicvoidshouldLaunchTagListActivity(){onView(withId

android - Espresso Recyclerview 滚动到结束

我有一个Android应用程序,它有一个带有N个元素的RecyclerView,当这个RecyclerView在滚动时到达终点时,就会添加更多元素(因此,它是一个无限列表,当滚动到达底部时加载数据)。我想对此进行测试,但我还没有找到执行此操作的方法。我使用具有scrollToPosition的RecyclerViewActions,但即使我放置最后一个位置,也没有到达终点(因为每个元素的高度都很高)。有人知道我该怎么做吗? 最佳答案 我使用下面的代码滚动到我的RecyclerView的底部。activity=mActivityTes

android - 如何在 Espresso 上按下编辑器操作

如何使用Espresso按Android软键上的编辑器操作键?我试过:onView(withId(R.id.test_title)).perform(typeText("示例标题"),pressKey(KeyEvent.FLAG_EDITOR_ACTION));但它不起作用..有什么想法吗? 最佳答案 “pressKey”需要一个KEYCODE,而不是一个FLAG。所以pressKey(KeyEvent.FLAG_EDITOR_ACTION)没有任何意义,肯定不会起作用。但是有一个用于按下编辑器(IME)Action的ViewAct

android - 关闭 Android Espresso 测试中的警报对话框

我四处寻找解决方案,但找不到。我正在创建Espresso测试,并且需要在第一次显示特定Activity屏幕时关闭出现在屏幕中间的警报对话框。对话框上没有按钮,因此用户需要单击框外的任意位置才能关闭它。有谁知道我如何用Espresso做到这一点。我尝试单击底层屏幕上的布局,但Espresso失败,提示无法在层次结构中找到该View。 最佳答案 使用onView(withText("alert_dialog_text")).perform(pressBack());这必须关闭您的对话框。 关

java - 使用 Android Espresso 进行测试时如何单击操作栏项目?

我正在使用AndroidEspresso来测试我的Activity。我有多个操作栏项目,其中大部分隐藏在溢出中。我正在尝试运行此测试,但错误提示层次结构中没有View(与不可见不同):@MediumTestpublicvoidtestClickInsertItem(){Espresso.onView(ViewMatchers.withId(R.id.action_insert)).perform(ViewActions.click());}错误:android.support.test.espresso.NoMatchingViewException:Noviewsinhierarch

安卓 Espresso : ViewPager does not have adapter instance

我在我的Android(4.0+)应用fragment(在Activity中)中使用标签栏。我想创建Espresso测试,但如果我创建主Activity并打开fragment。我得到这个异常:java.lang.IllegalStateException:ViewPagerdoesnothaveadapterinstance.atcom.astuetz.PagerSlidingTabStrip.setViewPager(PagerSlidingTabStrip.java:177)atcz.villamemories.detoxme.staticcontent.StaticContent

java - 如何在 Espresso 中重新运行失败的测试? - 头脑 Storm

我想知道如何使用Espresso重新运行失败的测试。我认为它比常见的JUnit测试用例要复杂一些,因为您需要在测试开始之前恢复应用程序中的状态。我的方法是创建我自己的ActivityTestRule,所以我只是从这个类中复制了整个代码并将其命名为MyActivityTestRule。在仪器测试的情况下,规则还需要我们希望如何开始我们的Activity的信息。我更喜欢自己启动它,而不是让环境为我启动它。例如:@RulepublicMyActivityTestRuleactivityRule=newMyActivityTestRule(ActivityToStartWith.class,t

java - 在 Espresso 中应用未闲置时强制执行操作 - Android

很多人问过如何让Espresso框架等待后台任务完成,然后再执行操作或声明某些内容。我了解在这些情况下,IdlingResource通常是答案。我的问题有点相反。我有一个Espresso默认等待的倒计时,因为ProgressBar已更新。在此倒计时期间,我有一种“取消”按钮来停止倒计时。我要编写的测试将设置后台任务并检查取消按钮是否使应用程序返回到上一个屏幕。现在它等待后台任务完成,然后再尝试单击取消按钮,但取消按钮在任务完成后消失。我如何“强制”Espresso执行某项操作(点击取消),即使该应用未处于空闲状态? 最佳答案 老实说

android - 使用 RxLoader 进行 Espresso 测试

我有一个使用RxLoader在Activity创建时从服务器获取数据并填充ListView的Activity。我还有测试代码,它会在ListView填充后尝试点击它的第一行。因为我正在使用RxLoader,所以我必须为Espresso编写一个自定义的IdlingResource。但是,问题是测试在我的ListView被填充之前完成(失败)。这是我的Activity代码:RxLoaderManager.get(this).create("my_loader",mRestService.loadData(),newRxLoaderObserver(){@Overridepublicvoid

Android + Espresso + 异步 HTTP 请求 -> 如何测试?

我正在尝试使用EspressoFW测试Android应用程序,但我遇到了执行异步HTTP请求的问题。我如何测试应用程序(Activity)正在等待处理请求并在收到响应后显示下一个Activity以及结果或错误消息的情况?我试图通过针对来自测试服务器的数据进行测试来找到如何在Espresso中执行此操作的任何解决方案,但没有成功。非常感谢您提供任何建议、示例或链接。 最佳答案 我为此苦苦挣扎了几天。如果您的应用正在使用改造来处理HTTP请求,您可以添加这一行:.setExecutors(AsyncTask.THREAD_POOL_EX