如何自动化 MacOS OS 用户交互测试?
Posted
技术标签:
【中文标题】如何自动化 MacOS OS 用户交互测试?【英文标题】:How to automate MacOS OS user interaction tests? 【发布时间】:2022-01-19 17:51:13 【问题描述】:在工作中,我正在设置一个产品,用于设置和管理 MacOs 系统以及其他系统上的安全策略。不幸的是,我无法在该产品的文档中找到确切的操作系统机制用于策略的应用程序和本地管理,但我认为对于我的问题,这些知识并不是必不可少的。 我正在寻找一种解决方案来测试策略本身。目前,我必须手动登录测试系统并手动调用各种应用程序和服务来检查策略是否阻止或允许正确的操作。 Mac 世界中是否有任何工具/库可以自动执行此任务? 对于 GUI 测试,我通过快速 google https://github.com/google/EarlGrey/tree/earlgrey2 找到了这个库。但我不知道它是否适合在我的用例意义上测试任何应用程序/服务。例如,在编写测试之前,我是否必须手动查找所有窗口 ID 等?我可以在我的场景中使用它们吗? 是否有任何其他 Swift/Objective-C 库可用于此类测试?或者甚至是Ruby中的一些? 如果这个解决方案也可以集成到 CI/CD 管道中,那将是理想的。
非常感谢您的帮助!
【问题讨论】:
【参考方案1】:您也许可以根据一些现有的帮助工具和脚本(可能有很多不同的)制作自己的测试脚本集。
一些指针是:
AppleScript - 它允许自动化 GUI 应用程序等 Automator 和类似物 Alfred对于 CI,如果您能够将手动工作流程的运行封装在一个 shell 脚本中,该脚本会产生明确定义的输出(预期的屏幕截图或文本文件),那么它可以作为您的测试套件的基础。这个测试套件本身可以用任何语言编写,只要它可以访问 shell(Ruby、Python 等,包括 bash/zsh 本身)。
【讨论】:
以上是关于如何自动化 MacOS OS 用户交互测试?的主要内容,如果未能解决你的问题,请参考以下文章