如何解决XCTest 如何在操作系统设置中切换通知开关?
我正在尝试为我正在测试的应用程序启用/禁用操作系统通知开关,但我无法启用。我得到了“设置”>“通知”>“应用程序”屏幕本身,但开关似乎没有我可以与之交互的按钮。
这是我得到的程度:
let settingsApp = XCUIApplication(bundleIdentifier: "com.apple.Preferences")
settingsApp.launch()
settingsApp.tables.cells.staticTexts["Notifications"].tap()
settingsApp.tables.cells.staticTexts["app_name"].tap()
到目前为止一切顺利,但这里的按钮列表返回如下:
Failed to get matching snapshot: No matches found for Element at index 7 from input {(
Button,Button,identifier: 'Lock Screen',Selected,identifier: 'Notification Center',identifier: 'Banners',Disabled,Disabled
)}
我尝试过 settingsApp.buttons.element(boundBy: 0).tap()
,但最终成为后退按钮和 boundBy: 1 最终成为“锁定屏幕”按钮。
“允许通知”开关是否不可点击? :)
解决方法
Allow Notifications 是一个 switch
,它将响应 tap()
。以下应该可以解决问题:
settingsApp.tables.cells.switches["Allow Notifications"].tap()
我通常将开关敲击包含在切换函数中,该函数采用预期状态,并且仅在尚未处于该状态时才敲击。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。