2017-01-01 25 views
2

我正在测试iOS应用程序,目前我正在使用isHittable检查是否存在特定的XCUIElement在使用XCTest测试iOS应用程序时检查屏幕上XCUIElement的位置

我想知道我们是否也可以检查视图上XCUIElement的位置。例如,如果我们在视图的右下角有一个按钮,我们可以使用XCTest框架检查它是否实际位于右下角?

我看了一下XCTest框架的Apple文档,但没有得到任何线索。任何帮助将不胜感激。

回答

3

XCUIElement有一个属性frame您可以使用它来查找有问题的元素的坐标。

let button = XCUIApplication().buttons["someButton"] 
let frame = button.frame 
let xPosition = frame.origin.x 
let yPosition = frame.origin.y 

有相对于框架,这是一个CGRect,检索不同点的其他方式,如midXmidY,这取决于你想如何断言元素的位置。

你应该知道XCTest是一个UI测试框架,如果你使用它来声明一个元素的位置,那么每个设备/模拟器的位置可能会不同,这可能会让你的测试变得脆弱。

0

使用获取元素的界限:

let bounds = viewToTest.convert(viewToTest.bounds, to: nil) 

然后检查的范围是否正确。请注意,纵向放置时,边界相对于屏幕的左上角。

相关问题