iOS UI测试:如何使用Fastlane快照通过代码消除一系列系统警报(麦克风访问)

时间:2019-05-24 07:32:03

标签: ios swift react-native xcuitest fastlane-snapshot

我使用mac mojave 10.14.3和react-native版本-0.59.1,fastlane最新版本。我试图通过ios xcuitest运行fastlane屏幕截图,但无法关闭系统警报。我已附上我的代码和警报屏幕

你能帮我吗

addUIInterruptionMonitor(withDescription: "System Dialog") {
        (alert) -> Bool in
        let okButton = alert.buttons["OK"]
        if okButton.exists {
          okButton.tap()
        }

        let allowButton = alert.buttons["Allow"]
        if allowButton.exists {
          allowButton.tap()
        }

        return true
      }

      app.tap()
      snapshot("04EndRecord")

这是我的提醒和应用。该警报显示在应用程序外部,那么我该如何处理?

Microphone access alert

2 个答案:

答案 0 :(得分:0)

系统警报是自动触发还是在用户交互后触发? 您应该在触发对话框之前添加InterruptionMonitor。

答案 1 :(得分:0)

几个月前,我遇到了这个问题。当我想在应用程序中使用声音时出现。我在运行UI测试期间禁用了声音。

您可以对您的应用程序应用相同的过程吗?