2017-01-30 28 views
0

我有一个'UICollectionView”,其中我能够向下滚动,但不能向上滚动。我不知道如果我失去了一些东西很简单 - 这里的代码如下:不能向上滚动使用EarlGrey

(格式化是怪异的,所以这里是截图)

enter image description here

第一块执行完美,但该应用程序不会再次向上滚动,并且我需要点按的按钮仍然不在屏幕上。

编辑:尝试添加grey_sufficientlyVisible按@gran_profaci,仍然无法找到的元素。

no UI element matching (matcherForSufficientlyVisible(>=0.750000) && (respondsToSelector(accessibilityIdentifier) && accessibilityID("bar"))) was found.但是,它仍然存在于记录的层次。

enter image description here

+0

你能不能提供您所看到的错误?我怀疑问题是该元素存在于层次结构中,但尚未可见。 –

回答

1

这里有一个简单的测试,你可以做EarlGrey - 建立一个表视图或使用EarlGrey的FunctionalTestApp并试图滚动到一个内容边缘,然后回来。在滚动的一个中间,暂停测试,并添加以下到调试控制台:

po [GREYElementHierarchy hierarchyStringForAllUIWindows] 

什么,你可能会注意到的是,在层次结构,有可能是不可见的少数细胞屏幕。当您使用滚动搜索行动找到grey_accessibilityID(@"bar"),你要搜索,以确保只有该细胞存在于层次结构,而不是如果你能看到/与其交互。

请添加grey_sufficientlyVisible()到grey_accessibilityID(@“......”)的匹配,看看你会得到什么。

+0

非常感谢回复。添加'grey_interactable()'后,我仍然收到这个错误: 异常:NoMatchingElementException 原因:声明'assertWithMatcher:interactable'没有执行,因为没有UI元素匹配((respondsToSelector(accessibilityIdentifier)&& accessibilityID(“bar “))&& interactable)被发现。 ' 在层次结构中,我可以看到按钮存在。我认为它可能在屏幕的边界,但还有另一种视角模糊了它,这就是为什么我要将它滚动到视图中。有任何想法吗? – ArielSD

+0

为什么添加grey_interactable()?这只能确保存在的元素在窗口框架中具有激活点,但没有任何可见的元素。你可以添加grey_sufficientlyVisible()吗? –

+1

很酷,我不知道!我会在编辑中加入这些内容,所以我不会混淆评论。 – ArielSD

相关问题