我正在尝试将我的UITests本地化,以使其适用于其他语言(目前使用快照自动化截图,因此我需要这个工作)。
我目前的主要问题是在IQKeyboardManager中的“完成”按钮上。
在英文中,我有以下代码,它可以正常工作:
我目前的主要问题是在IQKeyboardManager中的“完成”按钮上。
在英文中,我有以下代码,它可以正常工作:
app.toolbars.buttons["Done"].tap()
在输入文本后,需要点击“完成”按钮。
在西班牙语中,该按钮称为“OK”。看起来它是从一些默认的UIKit本地化字符串中获取的。
我尝试在我的UITest es.lproj
文件夹中添加了一个.strings文件,并在其中添加了"UIBarButtonSystemItem.Done" = "OK";
。
我还将其更改为:
app.toolbars.buttons[NSLocalizedString("UIBarButtonSystemItem.Done", bundle: Bundle.main, value: "Done", comment: "")].tap()
可是那并没有起作用,我总是使用"完成"。
却总是提示以下错误:
未找到匹配的"完成"按钮。
我也尝试了:
app.toolbars.buttons[NSLocalizedString("UIBarButtonSystemItem.Done", comment: "")].tap()
这导致了一个错误:
未找到“UIBarButtonSystemItem.Done”按钮的匹配项。
所以看起来我的.strings文件在UITests中无法工作。有什么想法可以让它工作吗?