web-dev-qa-db-ja.com

Androidアプリケーションのパフォーマンスをテストするには?

Androidでアプリケーションのパフォーマンスをテストするにはどうすればよいですか? Androidで提供されるサポートとは何ですか?

73
Bharat Pawar

パフォーマンスのボトルネックを見つけるためにアプリケーションのプロファイルを作成する場合は、 traceviewツールを使用 にできます。これにより、アプリケーションのパフォーマンストレースがグラフィカルに表示されます。

トレースを作成するには、トレースを開始するコードに次を追加します。

Debug.startMethodTracing("myapp");

トレースを停止する場合は、次を追加します。

Debug.stopMethodTracing();

これにより、SDカードのルートディレクトリにmyapp.traceというトレースファイル呼び出しが作成されます。 SDカードに書き込まれるとおり:

  • エミュレータを使用している場合、 SDカードをAVDに追加 にする必要があります。
  • マニフェストに以下を追加して、SDカードに書き込む許可をアプリに与える必要があります。

    <uses-permission Android:name="Android.permission.WRITE_EXTERNAL_STORAGE" />

ファイルが作成されたら、PCにコピーする必要があります。 adbコマンドを使用してこれを行うことができます。

adb pull /sdcard/myapp.trace c:/my/dir/myapp.trace

最後に、traceviewを開始して、トレースファイルへのフルパスを指定します。

traceview c:/my/dir/myapp.trace

traceviewOutOfMemory例外で失敗するという問題がありました。 traceview.batの最後の行を次のように変更することにより、Windowsでこれを修正しました。

call Java -Djava.ext.dirs=%javaextdirs% -Dcom.Android.traceview.toolsdir= -jar %jarpath% %*

に:

call Java -Xmx1g -Djava.ext.dirs=%javaextdirs% -Dcom.Android.traceview.toolsdir= -jar %jarpath% %*

-Xmx1gオプションを追加すると、traceviewがより多くのメモリを使用できるようになります。

96
Dave Webb

また、理論的に、DDMSはプログラムのメモリ割り当てを取得でき、プロファイラを使用してダンプを分析できます。 DDMSリファレンス
理論的にイタリック体を使用している理由は、私自身はまだそのようなことをしようとしていないからです。

5
Samuh

TraceViewに含まれる情報が多すぎると、迷子になる可能性があります。

私の解決策は、システム時間をコードの3箇所で記録することです。

潜在的な低速コードの前後および中心。

バイナリ検索のように、次回、段階的に絞り込み、最後に原因コードを見つけます。

3
coocood

テストする別の方法は、Load RunnerのTruClientを使用することです

モバイルWebの手順は次のとおりです。

  1. 新しいVuGenスクリプト
  2. モバイルプロトコル
  3. TruClientモバイルWebを選択
  4. 作成をクリックします
  5. これでスクリプトを生成できます
  6. [スクリプトの開発]ボタンをクリックします
  7. デバイスを選択するためのPoPアップウィンドウが表示されます
  8. アクションを選択すると、スクリプトを記録できます

ネイティブモバイルで従うべき手順は次のとおりです。

  1. 新しいVuGenスクリプト
  2. モバイルプロトコル
  3. TruClient Native Mobileを選択
  4. 作成をクリックします
  5. これでスクリプトを生成できます
  6. 開発スクリプトをクリック
  7. FirefoxでプラグインしたTruClientウィンドウが表示されます
  8. 一般設定をクリックします
  9. サーバーURLポートを構成する
  10. サーバーのURLポートがわからない場合は、デバイスにOS MONITORアプリケーションをインストールすることを意味します。ここでは、IPアドレスを見つけることができます
  11. ユーザー名とパスワードを入力してください
  12. クリック完了

スクリプトを記録してテストを実行できます。

0
Paarthiban NK

ロードランナーを使用できます。

詳細については、このリンクを使用してください。

http://www.perftesting.co.uk/recording-and-performance-testing-Android-applications-with-hp-loadrunner-vugen/2011/11/14/

従うべき手順は次のとおりです。

  1. 新しいVuGenスクリプトを作成
  2. モバイルアプリケーション-HTTP/HTMLを選択
  3. 記録オプション->記録エミュレーターの選択
  4. Record EmulatorへのパスをD:\ Android\AVD Manager.exeとして指定します
  5. コマンドラインで-avd AVD_NAME -netspeed full -netdelay noneここで、AVD_Nameはデバイスの名前です
  6. 作業ディレクトリを選択します
  7. 完了をクリックします

これでテストを実行できます。

0
Paarthiban NK