SilkTest 技術情報(FAQ)


SilkTest MobileでAndroidのハイブリッドアプリケーションのテストを行う際の注意事項

Android では、WebViewを内包したネイティブアプリケーションのテスト(ハイブリッドアプリケーション)が可能です。

その際、次の点に注意が必要です。


Silk Test 17.0,17.5

  • 1つのアクティビティ内に存在できるWebViewの数は1つです。
    広告用の小さい画面などで、WebViewを使用している場合もあります。アプリケーションの開発者に、WebViewの数に関して確認を行ってください。
  • WebViewには、デバッグ属性とjavaScript有効の属性が必要です。
    ソースコード上では、次のような処理が行われていることを確認してください。
     
    myWebView.setWebContentsDebuggingEnabled(true);
    myWebView.getSettings().setJavaScriptEnabled(true);
     
  • SilkTest WorkbenchやOpenAgentの動作している環境には、JDKがインストールされ、使用可能な状態になっている必要があります。

通常、Google Play などにアップロードされているアプリケーションでは、こうした設定は有効になっていません。動作確認などにあたりましては、開発者に確認し、必要に応じてテスト用にビルドしたアプリケーションを使用してください。


Silk Test 18.0

Silk Test 18.0では、ハイブリッドアプリケーションにおける制限が一部緩和されています。フォールバックサポートを使用することで、Webビューのデバッグオプション指定は不要です。(JavaScriptの有効化は必要です)

記録時にこの操作を行うことで、ハイブリッドアプリケーションにおけるWebビュー内のコンテンツは、HTML構造を使用せず、文字列などを使用したロケータが使用されて記録されます。再生時には、Agent.SetOption("EnableMobileWebviewFallbackSupport", true)を指定して、スクリプトから設定を有効にしてください。

※注意事項
この設定を行うと、ロケータはDOM構造を使用しません。結果として、オブジェクトの指定があいまいになったり、HTML特有のIDなどが使用できなくなります。スクリプトを正常に動作させるために、この設定はやむを得ない場合にのみ使用してください。
この設定を行っている場合、Webブラウザの記録/再生ができなくなります。アプリケーションの記録やテストが終わったら、この設定は必ずオフにしてください。

  • Silk Test Workbench
    オプション > 詳細設定から、Android とiOS上でWebビューのフォールバックサポート の設定を「はい」にします。
  • Silk4J
    SilkTestボタン > オプションの編集 > 詳細設定 から、Android とiOS上でWebビューのフォールバックサポートをチェックします。