【问题标题】:How can accessibility settings be configured from inside an XCTestCase如何从 XCTestCase 内部配置辅助功能设置
【发布时间】:2022-12-05 02:01:54
【问题描述】:

可以从模拟器上的设置应用程序启用和禁用 iOS 上的按钮形状(辅助功能)。但是,如果我们想启用和禁用它以从XCTestCase 中获取快照或任何其他类型的单元测试怎么办?

它似乎不是 UITrait,并且有一个 buttonShapesEnabled 属性从 UIAccessibility 暴露出来,但我们如何从单元测试内部更改此属性?

【问题讨论】:

    标签: ios swift xctest uiaccessibility xctestcase


    【解决方案1】:

    我建议使用 UI 测试来执行此操作。

    使用 UI 测试,您可以打开设置应用程序并通过创建一个以设置应用程序为目标的 XCUIApplication 来配置此设置。

    XCUIApplication(bundleIdentifier: "com.apple.Preferences")
    

    然后与设置中的按钮交互以启用/禁用按钮形状。

    然后,您可以使用 screenshot() 方法截取屏幕截图,然后启动并与您的应用程序交互:

    https://developer.apple.com/documentation/xctest/xcuiscreenshotproviding/2897250-screenshot

    【讨论】: