如何单击控制中心中的按钮?

时间:2016-04-11 11:11:37

标签: ios swift xctest xcode-ui-testing ui-testing

对于Swift和UITesting,我是一个新手。我有一个测试用例必须关闭设备的互联网连接,但由于我无法做到这一点,我试图通过滑动应用程序中可用的最底层元素来访问控制中心

let app = XCUIApplication()
app.buttons["Device"].swipeUp()
app.buttons["Device"].swipeUp()

现在显示控制中心,但是当我尝试单击飞行模式或Wi-Fi按钮时,它会失败。

app.otherElements["Airplane Mode"].tap()
app.otherElements["Wi-Fi"]

See Screenshot Here

请帮助我如何做到这一点,如果没有,请打开或关闭我的设备的互联网连接,谢谢!

1 个答案:

答案 0 :(得分:0)

使用UI测试没有可靠的方法。在UI测试中,您可以看到仅受测试的App的视图层次结构。 控制中心位于您的应用程序之外,因此您无权访问其视图层次结构。

如果你想真的这样做,一种方法是硬编码坐标然后执行点击操作。由于UI测试没有直接指定协调的机制,因此最好的方法是使用coordinateWithNormalizedOffset(normalizedOffset:CGVector)。