由于iOS 11 XCUITest不再能够找到UI
Images的生命值,因此无法使用press(forDuration:thenDragTo :)点击图像或拖动触摸.
有一种解决方法可以点击一个有效的图像(使用坐标上的点击(withNormalizedOffset:CGVector(dx:0,dy:0))).同样的方法对thenDragTo方法不起作用,因为它需要一个XCUIElement.
有没有人知道如何使thenDragTo方法工作(最好不必编辑生产代码)?
提前致谢
最佳答案 它在
Xcode 9.2中的测试中接受XCUICoordinate
extension XCUICoordinate {
open func press(forDuration duration: TimeInterval, thenDragTo otherCoordinate: XCUICoordinate)
}
我可以像这样使用它:
let fromCoordinate = contentElement.coordinate(withNormalizedOffset: CGVector(dx: 0.5, dy: 0.5))
let toCoordinate = fromCoordinate.withOffset(CGVector(dx: 0, dy: 260))
fromCoordinate.press(forDuration: 0.01, thenDragTo: toCoordinate)