本地化的字符串在UITests中始终是英文的(快照)

问题描述:

我对Fastlane很新,喜欢快照的想法,但是我遇到了一些问题。
当我试图创建一组新的屏幕截图时,我正面临着UITest不使用正确的本地化字符串来获取UI元素的问题。本地化的字符串在UITests中始终是英文的(快照)

我现在的状态,在此基础上堆栈条目:XCode 7 UITests with localized UI

定位方法:
func localizedString(_ key: String) -> String { let uiTestBundle = Bundle(for: MyUITests.self) return NSLocalizedString(key, bundle: uiTestBundle, comment: "") }
试图执行一个抽头方式:
app.navigationBars[localizedString("key_1")].buttons[localizedString("key_2")].tap()

的错误我得到的是以下: No matches found for "Rolling stone" NavigationBar
滚石是关键的基地/英语本地化,但应该有一个德国人。所以出于任何原因,UITest总是选择英文本地化。

有没有人有一个想法如何解决这个问题?我检查了SnapshotHelper,它传递了一个“de-DE”作为语言,所以这不是重点。
但我就是无法找到的Bug :(

Localization

这里这个环节应该是足以解决你的问题。你简单挑选下编辑方案选项的测试选项卡中正确的语言选项。

+0

使用fastlane时,想法是您不必为每个本地化选择语言选项,实际上,您无法这样做,您可以从命令行启动工作流程。 – NerdyTherapist