Eclipseをセットアップする

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Eclipseを使用してTradefedをセットアップするには、以下の手順に従います。

通商連合を開発するために別のワークスペースを作成します。Androidデバイスの開発にすでに使用されているワークスペースを再利用しないでください。

必要に応じて、 Java開発者向けのEclipseIDEをeclipse.org/downloadsからダウンロードできます。

プロジェクトを作成する

  1. コマンドラインからmakeを1回実行します。これにより、以下のプロジェクトに依存する外部ライブラリが構築されます。
  2. Window > Preferences > Java > Build Path> Classpath Variablesビルドパス]> [クラスパス変数]でTRADEFED_ROOTクラスパス変数を設定し、トレードフィードのソースルートをポイントします
  3. Window > Preferences > General > Workspace > Linked ResourcesでTRADEFED_ROOTパス変数を設定し、トレードフィードのソースルートをポイントします
  4. File > Import...-> General > Existing Projects into workspace"ウィザードを使用して、これらのオープンソースJavaプロジェクトを次のパスに取り込みます。

    prebuilts/misc/common/ddmlib\*
    tools/loganalysis
    tools/loganalysis/tests
    tools/tradefederation/core
    tools/tradefederation/core/tests
    tools/tradefederation/contrib
    tools/tradefederation/core/remote
    platform_testing/libraries/health/runners/longevity/host
    platform_testing/libraries/annotations
    platform_testing/libraries/health/composers/host
    
  5. オプションで、 ddmlibソースコードを表示する場合は、バンドルされていないツールブランチ( /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.javaなど)からソースコードを添付します。

  6. オプションで、CTSハーネスプロジェクトもロードする場合は、以下をインポートします。

    test/suite_harness/common/util
    test/suite_harness/common/host-side/util
    test/suite_harness/common/host-side/tradefed
    

自動フォーマット

注:必要なファイルは、完全なプラットフォームソースツリーのdevelopment/ide/eclipse内にあります。したがって、これらのファイルを取得するには、 masterなどのプラットフォームブランチをチェックアウトする必要があります: / development / master / ide / eclipse /

Eclipseの設定ファイルを使用して、フォーマッターをAndroidスタイルガイドに自動的に設定します。 Studioでこれを行うには:

  1. ウィンドウ」>「設定」>「Java」>「コードスタイル」に移動します。
  2. Formatterで、ファイルandroid-formatting.xmlをインポートします。
  3. [整理]> [インポート]で、ファイルandroid.importorderをインポートします。

末尾の空白を削除します

Eclipseに末尾の空白をすべて削除させるには:

  1. ウィンドウ」>「設定」->「Java」->「エディター」->「アクションの保存」に移動します。
  2. 次に、 [追加のアクション]-> [構成]-> [コード]> [整理]タブ-> [フォーマッター]を選択します。
  3. [末尾の空白を削除]をオンにします。
  4. [適用して閉じる]をクリックします。

コードスタイルを確認する

チェンジリストを送信すると、自動プリアップロードフックが実行され、コード形式がチェックされます: google-java-format

これは、コードを共通の標準にフォーマットするのに役立ちます。

Eclipseをデバッグする

Eclipseのデバッガーを介してTFコードを実行する場合は、最初に問題のコードの単体テストを作成することをお勧めします。これは、機能を実行するための最も簡単で最速の方法です。

TF単体テストをデバッグするには、TF単体テストを右クリックして、「名前を付けてデバッグ」>「JUnitテスト」を選択します。

TF機能テストをデバッグするには、機能テストを実行するための前のセクションの手順に従いますが、 [実行]> [デバッグ構成]メニューを使用します。

TFプログラム自体をデバッグするには、構成を実行するときに、機能テストを実行するための前のセクションの手順に従いますが、手順4で実行する構成のコマンドライン引数を指定します。したがって、「instrument」構成をデバッグするには、 [実行]> [デバッグ構成]メニューに移動し、Eclipseデバッグ構成の[引数]タブを-- package <package to run> instrument設定します。

Eclipseを使用したリモートデバッグ

次の手順に従って、 tradefed.shコマンドラインから開始されたtradefedセッションをリモートでデバッグします。

  1. デバッグフラグを指定してtradefed.shを開始します: TF_DEBUG=1 tradefed.sh
  2. JVMから次のプロンプトが表示されるまで待ちますListening for transport dt_socket at address: 10088これは、JVMがデバッガーがポート10088に接続するのを待機していることを意味します。
  3. メインメニューからEclipseのリモートデバッグを使用して接続します。[実行]> [デバッグ構成... ]を選択します。
  4. ポップアップダイアログで、左側のメニューから[リモートJavaアプリケーション]を選択します。
  5. アクションバーの[新規起動構成]アイコンをクリックします。
  6. 必要に応じて構成に名前を付け、プロジェクトとしてTradefederationを選択します。
  7. 以前に提供されたアドレスを使用してポートにデータを入力します。
  8. [ソース]タブに切り替えて、プロジェクトtradefederationgoogle-tradefedソースルックアップパスに追加します。
  9. [デバッグ]をクリックして、デバッグセッションを開始します。

デバッガーはリスニングJVMプロセスに接続し、 tradefed.shを実行している端末はtf>プロンプトを表示します。

デバッグモードでコードをステップスルーするには、Eclipseでブレークポイントを設定し、ターミナルでTradefedコマンドを呼び出します(つまりrun <test>します)。 TFの起動中に何かをデバッグするには、最初にブレークポイントを設定してから、Eclipseデバッガーを接続します。

ヒント:代替ポートを使用するには、上記の手順1のコマンドにTF_DEBUG_PORT=nnnを追加します。調査する不思議なハングバグがある場合は、これを本番環境で使用することもできますtradefed.shでsuspend suspend=ysuspend=nに変更し、デバッグフラグで開始します。 JVMはデバッガーの接続を待機しませんが、プロセスがまだ実行されている限り、いつでも接続できます。

JDBを使用したリモートデバッグ

Java Debugger JDBを使用するには、Eclipseの場合と同様の手順に従います。

  1. デバッグフラグを指定してtradefed.shを開始します: TF_DEBUG=1 tradefed.sh
  2. JVMからのプロンプトが表示されるまで待ちListening for transport dt_socket at address: 10088
  3. jdbを接続します。たとえば、crootrunから:

    jdb -attach 10088 \
        -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
    
  4. 接続を待ってデバッグしてください!さらにヘルプが必要な場合は、 man jdbを実行してください。

コードカバレッジを調べる

  1. Eclemmaプラグインをインストールします。
  2. [ヘルプ]> [新しいソフトウェアのインストール]に移動し、ウィザードでhttp://update.eclemma.org/を指定します。
  3. インストールしたら、[カバレッジ]> [JUnitテスト]オプションを選択して、コードカバレッジの実行を実行します。