android - Espresso 片段交易测试
问题描述
我正在做这个项目。我开始学习Espresso
用于编写 UI 测试的工具测试。我有一个底视图,每个底视图选项卡都有一个父片段及其子片段。我做了一个错误的片段事务,即当从服务底部视图选项卡主页导航到主页底部视图选项卡时,选择但显示服务片段。
我想在单击主页底部视图选项卡时测试是否添加主页片段。我已经尝试过这样的代码,但它也传递了错误的情况
我也浏览了下面的 StackOverflow 帖子,但没有工作
@Test
fun testHomeFragment_isDisplayed() {
//click on home navigation button of bottom view
onView(withId(R.id.navigation_home)).perform(click())
//click on services navigation button of bottom view
onView(withId(R.id.navigation_more)).perform(click())
//click on recycler view item at given position
onView(withId(R.id.more_rv)).perform(
RecyclerViewActions.actionOnItemAtPosition<RecyclerView.ViewHolder>(
1,
MyViewAction.clickChildViewWithId(R.id.row_more_parent)));
//Again click on home navigation button of bottom view
onView(withId(R.id.navigation_home)).perform(click())
//check that the home fragment is displayed or not.
onView(allOf(withId(R.id.home_pager), withParent(withId(R.id.papa)))).
check(matches(isCompletelyDisplayed()))
}
如何知道屏幕上当前显示的是哪个片段?
解决方案
推荐阅读
- c# - 如何在 UWP 桌面应用程序中使用 Win2D 将文本转换为图像?
- bpf - 比较 BPF 中的字符串时出现错误的地址错误
- django - 我似乎找不到从我的 django 应用程序写入 heroku 的 postgres 的方法
- c# - 如何使用服务帐户检索 Google 群组成员资格?
- javascript - 异步调用等待变量在 Javascript 中解决
- c# - 如何在 MVC 项目的视图中显示对象列表
- ruby-on-rails - 如何在 Rails (4.2) 中强制提交嵌套事务
- security - Vaadin 8 和过时的 HighCharts 库的安全问题
- flutter - 如何在 const 构造函数中为 dart 初始化最终变量
- android - 使用 Navigational 组件时,如何在后台堆栈中维护 Fragments 的状态?