Androidデバイス

このトピックでは、Android固有の問題の解決策を提供します。

Android 13でChromeDriverを使用してChromeを起動するとセッションが失敗する

これは、Chromeバージョンが110より前の場合にAndroid 13で発生するChromeDriverの既知の問題が原因で発生する可能性があります。この問題は、Chromeバージョン110以降にアップグレードすることで解決できます。

トップに戻る

テスト中に電話をかけたり受けたりすると、デバイスが切断される

テスト中の電話の発着信は、現在Androidデバイスではサポートされておらず、デバイスが切断される可能性があります。

トップに戻る

AndroidデバイスでChromeブラウザーを起動できません。セッションの作成に失敗しました。リクエストタイムアウトエラー。

ChromeDriverを実行するために必要なNetwork Security Services (NSS) ライブラリは、デフォルトではLinux OS 8.xバージョンには含まれていません。その結果、ChromeDriverを開始できず、セッションが失敗します。この問題は、次のコマンドを使用してnssパッケージをインストールすることで解決できます。 

コードをコピーする
sudo yum makecache –refresh
sudo yum -y install nss

Linuxマシンでインターネットにアクセスできない場合は、オフラインRPMをダウンロードして個別にインストールする必要があります。

トップに戻る

HMS (Huawei Mobile Services) を使用してアプリケーションをアップロードすると、エラーが発生する - エラー2110。

この問題は、ARTサポートを有効にすることで解決できます。

  1. 次の場所にあるApkInufserプロパティファイルを開きます。
    <OpenText Functional Testing Labサーバーインストールへのパス>/server/AndroidTools/ApkInfuser/ApkInfuser.properties

  2. 行 [globle.enableART=false] を [globle.enableART=true] に変更します。

  3. ファイルを保存します。

  4. アプリを再度アップロードします。

  5. コネクターを再起動します。

トップに戻る

一部のAndroidデバイスのリモートデバイスディスプレイが正しくロードされない - エラー1005

  1. Connector.propertiesファイルを見つけます。次の行の値をfalseに変更します。
    android.javavnc.useMinicap=false
  2. コネクターを再起動します。

安全なレイアウトのアプリは使用できませんのでご注意ください。

トップに戻る

コンピューターのキーボードから直接日本語を入力できない

デバイスのキーボード設定で、QWERTYレイアウトを選択します。

英語の文字が日本語に変換されない場合は、次の回避策のいずれかを使用してください。

  • コンピューターのキーボードから直接入力する場合:
    1. デバイスにGoogle PlayからGoogle日本語入力をインストールするか、apkをOpenText Functional Testing Labにアップロードし、OpenText Functional Testing Labからデバイスにインストールします。

    2. デバイスで、Google日本語入力キーボードを選択します。Google日本語入力設定で、キーボードレイアウトをQWERTYに設定します。

• デバイスコントロールペインのテキストの送信オプションを使用して入力します。

• デバイスのオンスクリーンキーボードをクリックして入力します。

トップに戻る

別のAndroidデバイスを接続すると、すべてのAndroidデバイスが切断される

HTC Sync ManagerやSamsung Kiesなどの一部のデバイスマネージャーは、デバイスを接続すると自動的に起動し、ADBサーバーを起動します。ADBサーバーを起動すると、すでにADBサーバーが実行されていることを検出し (OpenText Functional Testing Lab)、停止します。これにより、すべてのAndroidデバイスが切断されます。
回避策: デバイスマネージャーをアンインストールするか、OpenText Functional Testing LabでAndroidデバイスを使用しているときに自動的に起動されないことを確認してください。

トップに戻る

USBデバッグを有効にしようとすると、"An app is obscuring a permission request" エラーが表示される

「USBデバッグを許可する」を確認しようとすると、以下のエラーが発生する場合があります。エラーメッセージは、"Because an app is obscuring a permission request, Settings can't verify your response." です。

回避策として、以下を実行します。

  1. USBケーブルをデバイスから外します。
  2. デバイスをセーフモードで再起動します。これを行うには、デバイスを再起動するときに低音量ボタンを押し続けるか、製造元のガイドラインを確認します。画面左下にセーフモードが表示されます。
  3. USBケーブルをデバイスに接続します。
  4. 開発者向けオプションで、USBデバッグを有効にします。
  5. 通常モードでデバイスを再起動します。

トップに戻る

Proguardによって難読化されたアプリの記録/再生の問題

Proguardによって難読化され、OpenText Functional Testing Labによって自動的にパッケージ化されたアプリの場合、記録と再生が正しく機能しない場合があります。
回避策: APKInfuserツールを使用してアプリを手動でパッケージ化します。

  1. AppDelivery Marketplaceにアクセスします。OpenText Functional Testing Labの現在のバージョンを選択し、APKInfuserツールをダウンロードします。
  2. アーカイブファイルを解凍し、ApkInfuserフォルダーにあるApkInfuser.batファイルを見つけます。
  3. Android StudioでアプリケーションをビルドしたときにProguardによって生成されたmapping.txtファイルを見つけます。
  4. nativehybrid、およびmappingFileコマンドラインオプションを使用して、アプリでAPKInfuserを実行します。

    ApkInfuser.bat -native -hybrid -mappingFile <FULL_PATH_TO_MAPPING_FILE> <FULL_PATH_TO_APK>

    結果は、Webインストルメンテーションコードを含むデバッグ署名されたAPKファイルです。

    例:

    ApkInfuser.bat –native –hybrid -mappingFile c:\mapping.txt my-android-app.apk

    上記のコマンドは、元のAPKと同じフォルダーにファイルmy-android-app.apk.signed.debug.apkを生成します。

    ヒント: APKInfuserツールのヘルプについては、ApkInfuserフォルダー内のUsage.txtファイルを参照してください。

  5. 生成された*.signed.debug.apkファイルをOpenText Functional Testing Labにアップロードします。

トップに戻る

デバイスが数秒後に特定のデバイスで切断される

特定のAndroidデバイス、主に中国のベンダーによって製造されたデバイスは、メモリとバッテリーの使用量に影響を与えるセキュリティツールを使用しています。切断の問題が発生した場合は、次の手順を実行してください。

  1. OpenText Functional Testing Labエージェントの自動起動を有効にします。ホームページからデバイスのセキュリティアプリを開き、権限をクリックします。自動起動を選択し、OpenText Functional Testing Labエージェントアプリを見つけて、有効にします。
  2. バッテリーセーバーをオフにします。ホームページからデバイスのセキュリティアプリを開き、バッテリーをクリックします。バッテリーセーバーオフに設定してください。または、バッテリーセーバーをオンにして作業するには、アプリバッテリーセーバーを選択し、OpenText Functional Testing Labエージェントアプリを見つけます。制限なしを選択します。

トップに戻る

LGデバイスが向きを変更すると切断される

リモートビューのコントロールペインから向きを変更すると、特定のLGデバイスが切断されます。ログファイルには例外メッセージが含まれています。これが発生した場合は、以下を実行してください。

  1. 切断されたデバイスのデバイスカードをデバイスタブで確認し、モデル番号を確認します。これは通常、製造元名「LG」の後にハイフンと短い文字列が続きます。たとえば、LG-D855。

  2. Connector.propertiesファイルをC:\Program Files\Functional Testing Lab for Mobile and Web Server Server\server\conf (デフォルト) で開きます。
  3. 切断されたデバイスのモデルを「VNC_USE_64ARTIFACT_MODELS」行に追加します。ファイルを保存して閉じます。
  4. [スタート] メニューからコネクターサービスを再起動し、方向を変更した後で接続が安定していることを確認します。

トップに戻る

Appがクラッシュして記録セッションが終了する

記録セッション中にアプリがクラッシュしたり、強制的に終了したりすると、アプリを再起動してもアクションは記録されなくなります。セッションを最初から再記録する必要があります。

トップに戻る

Dexguardセキュリティ

Dexguardでアプリをコンパイルすることで、Dexguardセキュリティを使用できます。次の手順を実行します。

  1. オリジナルのパッケージアプリまたは非パッケージアプリをOpenText Functional Testing Labにアップロードします。
  2. 元のアプリでテストを記録します。
  3. 次のオプションを使用して、Dexguardでアプリを再コンパイルします。

    "-keepresourcexmlattributenames **/id -keepresources id/*"

  4. DexguardでラップされたバージョンのアプリをOpenText Functional Testing Labにアップロードします。
  5. Dexguardでラップされたバージョンのアプリを使用してテストを再生します。

トップに戻る

iFrameの失敗

クロスドメインiframe呼び出しはサポートされていません。たとえば、テストで別のドメインのWebページを指すiframeを使用すると、失敗します。

トップに戻る

ストレージ不足によるAppのインストールの失敗

Androidの制限により、特定のアプリのインストール中にデバイスがメッセージINSTALL_FAILED_INSUFFICIENT_STORAGEを発行する場合があります。この制限により、接続されている一部のデバイスが、しばらく接続された後、[デバイス] ページから消える場合もあります。
解決策: デバイスを再起動します。

トップに戻る

ハイブリッドアプリでの再生の問題

ハイブリッド非パッケージアプリを使用する場合は、リモートコンテンツのデバッグが有効になっていることを確認してください。詳細については、Androidアプリのリモートコンテンツデバッグを有効にするを参照してください。

トップに戻る

Good Connectクライアントの問題

Good Connectクライアントを備えたデバイスのリモートビューで作業するには、Androidスクリーンキャプチャの防止ポリシーをオフに設定する必要があります。ポリシーを有効にするには、2.3.18.687.117以降のリリースバージョンが必要です。詳細については、Blackberryナレッジベースの記事を参照してください。

トップに戻る

一部の入力メソッドエディターのアクションが期待どおりに動作しない

Androidで入力方式エディター (IME) アクションをサポートするには、テスト対象のアプリケーションをアプリ開発者がandroid:imeOptions属性を使用してカスタマイズする必要があります。そうしないと、PreviousDoneなどの一部のIMEアクションが期待どおりに機能しなくなります。

特定のデバイスに関する問題

デバイス固有の問題については、デバイスの接続セクションの既知の問題を参照してください。

トップに戻る

その他の参照項目: