1

我想编写一个 XCUITest,在其中获得系统对话框/警报。如何在带有 Xcode 9 的 Swift 3 / Swift 4 中处理它?它应该找到警报并单击显示的两个按钮之一。每次,如果我搜索警报,系统都找不到它们。

XCUIApplication().alerts.element.exists // Will get nothing
XCUIApplication().alerts.element.buttons.element(boundBy: 0) // Will get nothing too.
4

1 回答 1

5

您可以尝试使用 addUIInterruptionMonitor。下面的示例是当系统警报对话框出现在屏幕上时点击按钮允许。

    addUIInterruptionMonitor(withDescription: "System alert") { (alert) -> Bool in
        if alert.buttons["Allow"].exists {
            alert.buttons["Allow"].tap()
        }
        return true
    }
于 2017-10-03T19:31:47.117 回答