エラーが発生した場合の対応方法 -モバイル編-

Ranorexでモバイルアプリ(ネイティブアプリ/ハイブリッドアプリ)をテストする場合、Ranorexを介して、テスト対象アプリ(APK/IPAファイル)をモバイル端末上にインストールする必要があります。
テスト対象アプリをインストールする際には、Ranorexの機能となるインストルメント ウィザードを使用します。
インストルメントウィザードを介してテスト対象アプリをインストールすることで、Ranorexからテスト対象アプリに対して操作できるようになります。
※Ranorexによるモバイルテストの操作手順については、ユーザーガイドのモバイル テストをご参照ください。
本記事では、Ranorex v9.5.3を対象としています。

Ranorexでは、テスト対象アプリのインストールをはじめとし、モバイルテストの実施するために事前準備が必要となりますが、テスト対象アプリによっては事前準備やテスト作成のタイミングでエラーが発生するケースがあります。
本記事では、モバイルテストの事前準備やテスト作成時に、よく発生するエラーと対応方法についてご紹介します。

“インストルメントに失敗しました。” エラーが発生する

モバイルアプリをテストする場合、インストルメント ウィザードを使用し、テスト対象アプリ(APK/IPAファイル)のインストールを実施しますが、テスト対象アプリによっては、インストールに失敗する場合があります。
インストールに失敗すると、“インストルメントに失敗しました。”といったエラーが発生します。
本エラーが発生した場合における、エラー詳細の確認方法と対応策についてご紹介します。

エラーの詳細を確認する方法

テスト対象アプリのインストールが失敗すると、Ranorex Studio上にエラーメッセージが表示されます。
インストルメントウィザード画面にも、エラーの内容は表示されますが、詳細ボタンをクリックすることで、エラーの詳細を確認できます。

・Androidアプリの場合

Androidアプリでは、インストルメント方法を変更するためのオプションが用意されています。
そのため、対象アプリのインストルメントが失敗した場合には、エラーの詳細を確認する方法で確認したエラー内容に合わせて、オプションの変更の上、再度インストルメントをお試しください。

オプションの設定画面は、以下の手順で開くことができます。
1. Ranorex Studio を起動し、メニューバーからツール > インストルメントウィザードを選択します。
2. Androidを選択し、 次へ をクリックします。
3. APK(テスト対象アプリ)のインストール欄にある設定ボタンをクリックします。
上記手順により開かれた設定画面から、オプションを変更できます。

よく使用されるオプション

Androidアプリのインストルメントにおいて、よく使用されるオプションは以下の通りです。

・Multidex application
 →対象のモバイルアプリで参照するライブラリが65,536メソッドを超える場合に使用します。
  本設定をTrueとすることで、アプリは複数のdexファイルへアクセス可能となります。
・Redistribute smali
 →メソッド数が規定(65,536個)を超える場合に使用します。
  本設定をTrueにすることでRanorexがdexファイルを分割し、複数のdexファイルが作成されることで、65,536を超えるメソッドでもインストルメントが可能となります。
・Static instrumentation
 →「Redistribute smali」をTrueに変更してもインストルメントエラーになる場合には、追加でこのオプションもTrueに変更します。
  Ranorexは、特別なインストルメントメカニズムを使用したインストルメントを実施します。

オプションについては、ユーザーガイドのインストルメントウィザード – Androidアプリ – 高度なインストルメント設定に記載しております。

・iOSアプリの場合

iOSアプリのインストルメントが失敗した場合には、エラーの詳細を確認する方法でエラーの詳細をご確認ください。

なお、iOSアプリの場合、Androidアプリのようなオプションは持ち合わせておりません。
iOSアプリのインストルメントが失敗する原因として、インストルメント時に使用しているファイルに起因した問題であるケースが多いです。

インストルメント時に使用しているファイルが、以下の内容を満たしているかご確認ください。
IPA ファイル難読化されていないもの をご用意ください。
Provisioning FileDevelopment(開発者用)のもの をご用意ください。
P12証明書対象のiOSアプリに対応したP12証明書 をご用意ください。
P12証明書のパスワード → パスワードが正しいかご確認ください。

iOSアプリのインストルメント方法については、ユーザーガイドのインストルメントウィザード – iOS アプリをご参照ください。

アプリ起動時に Cannot launch app – Failed to start application ‘XXXXX’ because the application started event was not received within the specified timeout of ’00:00:10′ エラーが発生する

本エラーは、Ranorexが対象のアプリを起動するのに時間がかかり、設定時間内に起動処理が行えなかったことで発生します。
また、本エラーについては、AndroidおよびiOS両方で発生しうるエラーとなります。

対応策としては、Ranorexのタイムアウト時間の設定を長めの値に変更します。
タイムアウト設定を変更するには、以下の手順でおこないます。
1.Ranorex Studio にて、対象のソリューションを開きます。
2.メニューから、設定(=) > プラグインタブを開き、Mobile項目にある以下の設定を長めに設定します。
Connect timeout( 例:2m)
・Remote call timeout( 例:2m)


3. 適用をクリックし、変更を保存します。

まとめ

今回は、モバイルアプリをテストする場合における代表的なエラーについてご紹介しましたが、テスト対象アプリによって、直面する課題は多岐にわたります。
Ranorexをご利用いただく上で、課題の解決が難しい場合には、ぜひ以下のサポートをご利用ください。

よくある質問(FAQ)

よくある質問(FAQ)ページに、モバイルアプリに限らず、Ranorexを使用する上でのよくある質問をまとめております。
モバイルアプリに関しては、 FAQ – テクノロジー > モバイルアプリケーションでご紹介していますので、ご参照ください。
当サイト右上の検索ボックスやチャットボットから、エラーメッセージで検索することも可能です。

モバイルテストの動画

モバイルテストの操作手順を動画にてご紹介しております。
モバイルテストに必要な事前準備~テストの作成・実行まで一連の操作を確認いただけます。
初めてモバイルテストを実施する方はぜひご確認ください。

Ranorexテクニカルサポートへの問い合わせ

Ranorex 年間保守サービスにご加入のお客様は、日本語でのテクニカルサポートをご利用いただけます。
エラーの詳細を添付の上、テクマトリックス(株)Ranorex テクニカルサポートセンター にお問い合わせください。
窓口への問い合わせ方法に関しては、お手元の ユーザー登録カード をご確認ください。