0

我在屏幕外有 TextInput,样式为 {position: 'absolute', right: -99},当我调用 action typeText() 时,我收到此错误

“错误:错误:由于约束失败而无法执行操作。操作异常:{“操作名称”:“Tap”,“元素描述”:“”,“失败的约束”:“可交互”, "所有约束" : "(!(isSystemAlertViewShown) && ((respondsToSelector(isAccessibilityElement) && isAccessibilityElement) || kindOfClass('UIView')) && (启用 && !(((kindOfClass('UIView') || respondsToSelector (accessibilityContainer)) && 祖先ThatMatches(!(enabled))))) && 可交互的)", "恢复建议" : "调整元素属性,使其匹配失败的约束。" }

[ {“描述”:“由于约束失败,无法执行操作。”,“错误域”:“com.google.earlgrey.ElementInteractionErrorDomain”,“错误代码”:“1”,“文件名”:“ GREYBaseAction.m", "Function Name" : "-[GREYBaseAction satisfiesConstraintsForElement:error:]", "Line" : "66" } ] " 我如何在屏幕外使用 React Native TextInput 执行动作 typeText()

4

1 回答 1

0

为了让 Detox 与元素交互,元素需要通过可见性标准。我认为标准是 75% 的能见度。

detox/docs/Introduction.WritingFirstTest.md

请注意,可见性匹配器确保元素在屏幕上实际可见(准确地说至少是 75%)。如果它出现在折叠下(例如,用户必须滚动才能看到它),这个特定的匹配器将失败。


所以总而言之,当输入字段在屏幕之外时,我看不到如何输入文本。

于 2018-02-12T17:46:43.530 回答