如何在 macOS VM 上禁用 SIP 以便在 CI/CD 环境中进行 macOS UI 测试?

How to disable SIP on macOS VMs for macOS UI testing in CI/CD environment?

我一直在尝试 运行 我的 macOS UI 在远程机器 (VM) 上进行测试,但它不起作用。在本地机器上,它在提供与可访问性相关的权限后工作。仔细研究后,我意识到您需要禁用SIP并添加相关权限。

那么,如何在 CI/CD 中的无头计算机上禁用 SIP?

很遗憾,无法在远程计算机上禁用 SIP。您必须以安全模式启动并从终端禁用它。这需要直接访问机器。

您可以询问您的提供商是否可以为您禁用特定机器的 SIP,或者您可以寻找可以这样做的提供商。

有一些,Codemagic 就是其中之一。

我们发布了最新和测试版 Xcode 禁用 SIP 的 macOS 映像,因此您可以 运行 macOS UI 测试而无需任何额外配置。

无法测试 Mac 应用的 UI 令人沮丧,但我对我们成功发布的内容感到满意。

我也写了一篇博客post如果你有兴趣getting started with macOS UI testing

Full disclosure - I’m a DevRel at Codemagic CI/CD, focusing on helping the community build for Apple platforms.