我需要使用大量模拟器在 xcode 服务器上运行持续集成。有没有办法强制 始终接受 权限警报,例如:



等等...

最佳答案

在您的 setUp() 方法中,创建一个中断监视器并通过点击 OK 按钮处理警报。这意味着每当您尝试与应用程序交互时,都会检查权限 View 是否妨碍,然后点击“确定”按钮。

let permissionInterruptionMonitor = addUIInterruptionMonitor(withDescription: "Photos permission alert") { (alert) in
    alert.buttons["OK"].tap()
    return true // The interruption has been handled
}

如果您的应用程序中可能出现其他带有 OK 按钮的警报,但您不希望自动处理这些警报,则应确保中断监视器处理程序检查它是否是您要处理的警报。
let permissionInterruptionMonitor = addUIInterruptionMonitor(withDescription: "Photos permission alert") { (alert) in
    if alert.staticTexts["\"AppName\" Would Like To Access Your Photos"].exists {
        alert.buttons["OK"].tap()
        return true // The interruption has been handled
    }
    return false // The interruption has not been handled
}

关于xcode - 有没有办法强制机器人在 ui 测试下始终接受 xcode 持续集成中的权限警报?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39798351/

10-13 09:02