はじめに
RoboTestだと多言語対応が楽そうな印象があったのでちょっとだけ頑張った話です。
一個一個キャプチャ取るのとかやですよね。
インターフェース的にもできそうじゃないですか。
絶対できるんですが、そのままじゃできなかった。
スタンダードな手法で作ったroboscriptだと多言語対応できません。
問い合わせた

こんなメールが帰ってくる

結果
メールでのやり取りで解決しませんでした。
- roboscript
- apk
これらを送るように言われたのですが、apkを送るためにgoogleDriveを使うよう指示があったところで
会社のGSuiteを使った状態では共有が難しかったため、代替案を提供することも含めて
メール一往復で一日くらいかかることで、解決まで時間がかかりすぎ打ち切りました。
(最初に問い合わせてから4日たっていた)
roboscriptが実行されていないことを確認
RoboTestを実行するデバイスとroboscriptを取得するデバイスを合わせたりしたんですがどうにもいかず、実行されたのは
モンキーテスト的な動きだけ。
roboscriptでうまくいかない場合、RoboTestで実行した動画をみると
Robo Script
<実行するアクションの数> actions to perform
と表示した後に
Robo Script
<実行できたアクションの数> of <実行するアクションの数> actions successfull
と表示され、その後にRoboTestが判断したアクションが自動で実行されます
Robo Script
0 of <実行するアクションの数> actions successfull
Android Studioから書き出し、実行がうまくいっていないroboscriptをよく見てみることにしました。
roboscript
クリックするだけなのに、replacementTextはいるのかと
- replacementTextに
""
を設定 - textの部分はそのまま
多言語で複数ロケールを指定して実行してみました。
端末設定の言語が異なる状態で
Robo Script
<実行できたアクションの数> of <実行するアクションの数> actions successfull
となりました。
さいごに
Firebaseの問い合わせ時に、"日本語"で記載して問い合わせました。
Firebase担当者からの問い合わせの回答には文字化けしたメールが引用についていました。
どういう質問の仕方をしたのか、後から見てわからなくなってしまったのもあって
よくよく考えるとroboscriptでうまくいかないことだけを伝えた質問になったことで、メールでのやり取りを長引かせた可能性がありました。
やり取りはgoogle翻訳を使いやすいように、というFirebaseの担当者の理由で英語でリターンされるので、こちらもgoogle翻訳で訳した英語で返信するようにしました。
- 質問は英語で
- 多言語で正しく動作しないroboscriptからは、使用した端末の言語に限定した情報を抜いてみる
もうちょっと検証は必要かと思います。公式の情報があまり充実していません。
roboscriptは構造上そんなに難しくないので、色々いじって効率の良い方法を見つけていただけると助かります。