目前,我们使用 Github Actions 来运行我们的 Testcafe 套件,但问题是在 macos-latest
上运行 Safari 测试。图像,即 10.15 Catalina,给出了以下错误:UnableToAccessScreenRecordingAPIError: The find-window process cannot access the Screen Recording API.
这是因为 MacOS 图像没有默认授予的权限。显然,您无法以编程方式处理此问题,并且在 10.15 Catalina 中启用了一项名为 SIP 的功能,可阻止您绕过它。这是讨论 here .
由于我们依赖 Github 来提供图像,因此他们无法向我们提供非 SIP 图像,正如所讨论的 here .提供的解决方法没有任何帮助。
还有其他想法吗?
最佳答案
正如您已经提到的,由于 MacOS 机器上启用了 SIP,TestCafe 不会捕获屏幕截图并调整它们的大小。但是,可以使用远程模式,因为默认情况下禁用平台特定功能。您可以执行以下步骤:
testcafe remote test.js --hostname ${HOSTNAME} --ports ${PORT1},${PORT2} &
pid=$!
open -a Safari http://${HOSTNAME}:${PORT1}/browser/connect
wait $pid
关于testing - Testcafe 无法在启用了 SIP 的 MacOS 镜像上运行这一事实是否有任何解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63341991/