问题描述
我有一个 UITest(使用 XCTest 实现),当用户想要禁用精确位置(iOS 14 中引入的新功能)时,我想在其中测试我的应用的行为。
位置授权系统提示出现时(查看附件截图),我可以使用以下代码访问它
let springboard = XCUIApplication(bundleIdentifier: "com.apple.springboard")
let locationAlert = springboard.alerts.element
我可以通过以下方式访问精确位置按钮:
locationAlert.buttons["Esatta: sì"]
然而,当与它交互时,警报被视为“阻塞”元素并调用默认的“中断监视器”,导致警报被解除
t = 834.87s Check for interrupting elements affecting "Esatta: sì" Button
t = 834.92s Found 1 interrupting element:
t = 834.92s Find the "Vuoi consentire a “*****” di utilizzare la tua posizione?" Alert
t = 834.97s "Vuoi consentire a “*****” di utilizzare la tua posizione?" Alert from Application 'com.apple.springboard'
t = 834.97s Invoking UI interruption monitors for "Vuoi consentire a “*****” di utilizzare la tua posizione?" Alert from Application 'com.apple.springboard'
t = 834.97s Find the "Vuoi consentire a “*****” di utilizzare la tua posizione?" Alert
t = 835.01s Checking existence of `Button`
t = 835.06s Get all elements bound by accessibility element for: Elements matching predicate 'userTestingAttributes CONTAINS "default-button"'
t = 835.14s Checking existence of `"Non consentire" Button`
t = 835.19s Default interruption handler attempting to dismiss alert by tapping "Non consentire" Button.
t = 835.19s Tap "Non consentire" Button
t = 835.19s Wait for com.apple.springboard to idle
t = 835.22s Find the "Non consentire" Button
t = 835.28s Check for interrupting elements affecting "Non consentire" Button
t = 835.33s Synthesize event
t = 835.42s Wait for com.apple.springboard to idle
t = 835.84s Verifying handling...
t = 835.84s Check for interrupting elements affecting "Esatta: sì" Button
t = 835.85s Wait for xxxxxx to idle
t = 835.91s Confirmed successful handling of interrupting element
这仅在使用 Xcode 12.5 时发生,我以前的版本没有任何问题。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)