私はFastlaneにはかなり新しく、Snapshotのアイデアが大好きですが、少し問題があります。
新しいスクリーンショットのセットを作成しようとしているとき、UITestsがUIエレメントをフェッチするために正しいローカライズされたStringを使用しないという問題に直面しています。ローカライズされた文字列は、UITests(Snapshot)では常に英語で表示されます
私の現在の状態は、このスタックのエントリに基づいています。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"を渡すので、そうではありません。
しかし、私はちょうどバグを見つけることができません:(
ファストレーンを使用する場合は、各ローカリゼーションごとに言語オプションを選択する必要はありませんが、実際にはできません。コマンドラインからワークフローを開始します。 – NerdyTherapist