راه‌اندازی Eclipse

برای راه‌اندازی Tradefed بااستفاده از Eclipse، این مراحل را دنبال کنید.

فضای کاری جداگانه‌ای برای توسعه Trade Federation ایجاد کنید، از فضای کاری‌ای که قبلاً برای توسعه دستگاه Android استفاده شده است دوباره استفاده نکنید.

درصورت نیاز، می‌توانید Eclipse IDE for Java developers را از اینجا بارگیری کنید: eclipse.org/downloads

ایجاد پروژه‌ها

  1. یک‌بار make را از خط فرمان اجرا کنید. با این کار، کتابخانه‌های خارجی که پروژه‌های زیر به آن‌ها وابسته هستند ساخته می‌شود.
  2. متغیر مسیر کلاس TRADEFED_ROOT را در Window > Preferences > Java > Build Path> Classpath Variables تنظیم کنید و آن را به ریشه منبع tradefed خود هدایت کنید
  3. متغیر مسیر TRADEFED_ROOT را در Window > Preferences > General > Workspace > Linked Resources تنظیم کنید و آن را به ریشه منبع tradefed خود هدایت کنید
  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 در درخت منبع پلاتفرم کامل قرار دارند. بنابراین برای دریافت این فایل‌ها باید شاخه پلاتفرمی مثل android-latest-release را بررسی کنید: /development/android17-release/ide/eclipse/

از فایل‌های اولویت در Eclipse برای تنظیم خودکار قالب‌بندی به راهنمای سبک Android استفاده کنید. برای انجام این کار در «استودیو»:

  1. به پنجره > اولویت‌ها > جاوا > سبک کد بروید.
  2. در بخش قالب‌بندی، فایل android-formatting.xml را وارد کنید.
  3. در بخش سازمان‌دهی > وارد کردن‌ها، فایل android.importorder را وارد کنید.

برداشتن فاصله‌های سفید انتهایی

برای وادار کردن Eclipse به برداشتن همه فاصله‌های سفید انتهایی:

  1. به Window (پنجره) > Preferences (اولویت‌ها) -> Java -> Editor (ویرایشگر) -> Save Actions (ذخیره کنش‌ها) بروید.
  2. سپس کنش‌های اضافی -> پیکربندی -> کد > برگه سازمان‌دهی -> قالب‌بندی.
  3. برداشتن فضای خالی انتهایی را علامت بزنید.
  4. روی اعمال و بستن کلیک کنید.

بررسی سبک کد

هنگام ارسال فهرست تغییرات، یک قلاب پیش‌بارگذاری خودکار برای بررسی قالب کد شما اجرا می‌شود: google-java-format

این کار به قالب‌بندی کد شما طبق استاندارد رایج کمک می‌کند.

اشکال‌زدایی Eclipse

اگر می‌خواهید کد TF را ازطریق اشکال‌زدا در Eclipse اجرا کنید، توصیه می‌شود ابتدا برای کد موردنظر آزمون واحد ایجاد کنید زیرا این ساده‌ترین و سریع‌ترین راه برای تمرین عملکرد است.

برای اشکال‌زدایی کردن آزمون واحد TF، کافی است روی آن کلیک راست کنید و اشکال‌زدایی به‌عنوان > آزمون JUnit را انتخاب کنید.

برای اشکال‌زدایی کردن آزمایش عملکردی TF، دستورالعمل‌های بخش قبلی را برای اجرای آزمایش عملکردی دنبال کنید، اما از منو اجرا > پیکربندی‌های اشکال‌زدایی استفاده کنید.

برای اشکال‌زدایی خود برنامه TF، هنگام اجرای هر پیکربندی، دستورالعمل‌های بخش قبلی را برای اجرای آزمایش عملکردی دنبال کنید اما در مرحله ۴، آرگومان‌های خط فرمان را برای پیکربندی موردنظرتان برای اجرا ارائه دهید. بنابراین برای اشکال‌زدایی پیکربندی «ابزار»، به منو اجرا > پیکربندی اشکال‌زدایی بروید و زبانه آرگومان‌ها را در پیکربندی اشکال‌زدایی Eclipse روی -- package <package to run> instrument تنظیم کنید.

اشکال‌زدایی از دور با Eclipse

برای اشکال‌زدایی از دور جلسه tradefed که از خط فرمان tradefed.sh شروع شده است، این مراحل را دنبال کنید:

  1. ‫tradefed.sh را با پرچم اشکال‌زدایی شروع کنید: TF_DEBUG=1 tradefed.sh
  2. منتظر بمانید تا این پیام‌واره را از JVM ببینید: Listening for transport dt_socket at address: 10088 این یعنی JVM منتظر است اشکال‌زدا در درگاه 10088 پیوست شود.
  3. پیوست با اشکال‌زدایی از دور Eclipse از منو اصلی: اجرا > پیکربندی‌های اشکال‌زدایی… را انتخاب کنید.
  4. در چارگوش گفتگوی بازشو، برنامه جاوا از دور را از منوِ سمت راست انتخاب کنید.
  5. روی نماد پیکربندی راه‌اندازی جدید در نوار اقدام کلیک کنید.
  6. پیکربندی را به نام دلخواهتان نام‌گذاری کنید و tradefederation را به‌عنوان پروژه انتخاب کنید.
  7. درگاه را بااستفاده از نشانی‌ای که قبلاً ارائه شده است تکمیل کنید.
  8. به برگه Source بروید و پروژه‌های tradefederation و google-tradefed را به Source Lookup Path اضافه کنید.
  9. برای شروع جلسه اشکال‌زدایی، روی اشکال‌زدایی کلیک کنید.

اشکال‌زدا به فرایند JVM درحال گوش دادن متصل می‌شود و پایانه درحال اجرای tradefed.sh پیام‌واره tf> را نشان می‌دهد.

برای گام‌به‌گام پیش رفتن در کدتان در حالت اشکال‌زدایی، نقطه توقفی در Eclipse تنظیم کنید و فرمان Tradefed خود (یعنی run <test>) را در پایانه فراخوانی کنید. برای اشکال‌زدایی هر چیزی درطول راه‌اندازی TF، ابتدا می‌توانید نقطه گسست را تنظیم کنید و سپس اشکال‌زدای Eclipse را پیوست کنید.

نکته: برای استفاده از درگاه جایگزین، TF_DEBUG_PORT=nnnرا به فرمان در مرحله ۱ بالا اضافه کنید. حتی می‌توانید از این در محیط تولید استفاده کنید اگر اشکالات تعلیق مرموزی برای بررسی دارید: suspend=y را در tradefed.sh به suspend=n تغییر دهید و با پرچم اشکال‌زدایی شروع کنید. JVM منتظر نمی‌ماند تا اشکال‌زدا متصل شود، اما تا زمانی که فرایند همچنان درحال اجرا است، می‌توانید این کار را در هر زمانی انجام دهید.

اشکال‌زدایی از راه دور بااستفاده از JDB

برای استفاده از «اشکال‌زدای جاوا» (JDB)، مراحل مشابه مراحل Eclipse را دنبال کنید:

  1. ‫tradefed.sh را با پرچم اشکال‌زدایی شروع کنید: TF_DEBUG=1 tradefed.sh
  2. منتظر بمانید تا پیام‌واره JVM را ببینید: Listening for transport dt_socket at address: 10088.
  3. ‫jdb متصل شود. برای مثال، از croot run:

    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 را انتخاب کنید تا اجرای پوشش کد را انجام دهید.