私のiOSアプリケーションには10以上の言語のローカリゼーションがあります。すべての画面に問題がないことを確認したいと思います(ラベルが長すぎたり短すぎたりしないなど)。
私は自分のアプリを調べて、UIオートメーションを使用してスクリーンショットを作成できることを知っています。UIオートメーションでシミュレータの言語を切り替える方法はありますか?1つのコマンドを起動するだけでアプリのスクリーンショットを生成する方法はありますか?
ありがとう!
私のiOSアプリケーションには10以上の言語のローカリゼーションがあります。すべての画面に問題がないことを確認したいと思います(ラベルが長すぎたり短すぎたりしないなど)。
私は自分のアプリを調べて、UIオートメーションを使用してスクリーンショットを作成できることを知っています。UIオートメーションでシミュレータの言語を切り替える方法はありますか?1つのコマンドを起動するだけでアプリのスクリーンショットを生成する方法はありますか?
ありがとう!
はいあります。実は自分で書いただけです。:)
このプロジェクトを使用してください:https ://github.com/jonathanpenn/ui-screen-shooter
これは、コマンドラインからUIオートメーションを実行し、シミュレータ言語をplist変更コマンドで交換し、AppleScriptでシミュレータデバイスタイプを選択する方法のデモンストレーションです。コメント付きで詳細に文書化されていますが、何かについて混乱している場合は、プロジェクトの問題またはプルリクエストを開いてください。改善することができます。
まさにあなたが望むもののために、Snapshotと呼ばれる別のgithubプロジェクトがあります。
UI Screen Shooterと同じ(およびそれ以上の)機能を提供しますが、もう少し具体化されて文書化されていることがわかりました。
起動して実行する上で最も難しい部分は、シミュレーターでアクションを実行するためのJavascript APIを学習することですが、そのための多くの便利なチュートリアルをオンラインで見つけることができます。
ここにいくつかの有用な参考資料があります:
osxアプリのテスト中に、以下のスクリーンショットを撮りました。iOSアプリでも問題なく動作します。
xcodeプロジェクトに対して無制限の数のスキームを生成できます。そうすれば、任意の言語でアプリをテストし、シミュレーター内でスクリーンショットを取得できます。さて、例から始めましょう:プロジェクトにドイツ語のスキームを追加します
ローカリゼーションが完了したら、言語ごとに新しいスキームを追加する必要があります。
ステップ1:現在のスキーム(タブバーのスキームパネル)をクリックします。下の画像のスキームはJHDTestLayoutです:
ステップ2:これで、スキームを管理できます。まず、新しいものを追加する必要があります。
ステップ3:新しいスキームの名前を入力します。
ステップ4:その後、タブバーのスキームパネルをもう一度クリックし(ステップ1)、新しいスキームを選択して、[スキームの編集]を選択します。
ステップ5: 「起動時に渡される引数」セクションに2つの引数を追加し(+を使用)、[OK]を押します。
起動時に渡される引数:次のように、さまざまなスキームに他の言語を使用することもできます。
ドイツ人
-AppleLanguages (de)
-AppleLocale de_DE
スペイン語
-AppleLanguages (es)
-AppleLocale es_ES