手动操作时,我只需进入系统偏好设置,更改语言顺序,然后重启应用,让它以默认系统语言启动。然后,我就可以在以该语言运行的应用上进行自动化测试。
在命令行中,有一个内置的 OSX 实用程序语言设置,但这需要 sudo 并且必须提示新语言(即没有明显的命令行选项)。
我不太了解 AppleScript,所以我无法使用它,但我愿意使用它。
答案1
您可以通过添加选项来使用不同的语言打开应用程序-AppleLanguages
:
/Applications/Calendar.app/Contents/MacOS/Calendar -AppleLanguages '(de)'
AppleLanguages
另一种选择是向应用程序的属性列表中添加一个数组:
defaults write -app Calendar AppleLanguages -array de; open -a Calendar
languagesetup
AppleLanguages
仅改变数组中的第一个项目/Library/Preferences/.GlobalPreferences.plist
。
答案2
没有必要改变系统默认语言(至少对于大多数应用程序而言)。系统偏好设置 » 语言和文本无论如何都不会改变系统默认语言,它只是您的用户配置文件的配置。
以下脚本写出首选语言列表(首先是德语,然后是英语):
defaults write -g AppleLanguages -array de en
运行此程序,然后打开您的应用程序。根据需要添加或删除语言 ID。
列出当前的语言配置:
$ defaults read -g AppleLanguages
(
en,
de
)