הגדרת Eclipse

יש לפעול לפי השלבים הבאים כדי להגדיר את מערכת המסחר האלקטרוני באמצעות Eclipse.

ליצור סביבת עבודה נפרדת לפיתוח איחוד מסחר. אין לעשות שימוש חוזר Workspace כבר משמש לפיתוח מכשירי Android.

במקרה הצורך, אפשר להוריד את Eclipse IDE למפתחי Java: eclipse.org/downloads

ליצור פרויקטים

  1. מריצים את הקוד פעם אחת משורת הפקודה. היא תיצור ספריות חיצוניות בהתאם לפרויקטים הבאים.
  2. צריך להגדיר את משתנה ה-classpath TRADEFED_ROOT ב-Window > Preferences > Java > Build Path> Classpath Variables ולהפנות אותו לרמה הבסיסית (root) של המקור שהוזן במסחר
  3. צריך להגדיר את משתנה הנתיב TRADEFED_ROOT ב-Window > Preferences > General > Workspace > Linked Resources ולהפנות אותו לרמה הבסיסית (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 בפלטפורמה המלאה עץ המקור. לכן, חשוב לבדוק הסתעפות בפלטפורמה, כמו main כדי לקבל את הקבצים האלה: /פיתוח/ראשי/צד/ליקוי חמה/

משתמשים בקובצי העדפות ב-Eclipse כדי להגדיר באופן אוטומטי את הפורמט של הפורמט מדריך הסגנון של Android. כדי לעשות זאת ב-Studio:

  1. עוברים אל חלון > העדפות > Java > סגנון הקוד.
  2. בקטע Formatter מייבאים את הקובץ android-formatting.xml.
  3. בקטע ארגון > מתבצע ייבוא, מייבאים את הקובץ android.importorder.

הסרה של רווחים לבנים בסוף

כדי לאלץ את ליקוי החום להסיר את כל הרווחים הלבנים בסופו של דבר:

  1. עוברים אל חלון > העדפות -> Java -> עורך -> שמירת הפעולות.
  2. ולאחר מכן פעולות נוספות -> הגדר -> קוד > ארגון הכרטיסייה -> פורמט לכך.
  3. מסמנים את האפשרות הסרת רווח לבן נגרר.
  4. לוחצים על החלה וסגירה.

בדיקת סגנון הקוד

כששולחים רשימת שינויים, הוק (hook) העלאה אוטומטית מופעל יפעל כדי לבדוק פורמט קוד: google-java-format

פעולה זו עוזרת לעצב את הקוד לפי הסטנדרט המשותף.

ליקוי חמה

אם רוצים להריץ קוד TF באמצעות כלי לניפוי באגים ב-Eclipse, מומלץ קודם כל צרו בדיקת יחידה של הקוד, כי זו תהיה הבדיקה הכי פשוטה ואת הדרך המהירה ביותר לממש את הפונקציונליות.

כדי לנפות באגים בבדיקה של יחידת TF, פשוט לוחצים עליה לחיצה ימנית ובוחרים באפשרות Debug As > Junit בדיקה.

כדי לנפות באגים בבדיקה פונקציונליות של TF, צריך לפעול לפי ההוראות בקטע הקודם להרצת בדיקה פונקציונליות, אבל השתמשו בפקודה Run > תפריט ההגדרות של ניפוי באגים.

כדי לנפות באגים בתוכנת TF עצמה, כשמריצים הגדרה כלשהי, פועלים לפי ההוראות בקטע הקודם להרצת בדיקה פונקציונליות, אבל מספקים הארגומנטים של שורת הפקודה עבור התצורה שרוצים להריץ בשלב 4. ככה. כדי לנפות באגים ב'כלי' בתצורה, עוברים אל Run > הגדרה של ניפוי באגים בתפריט ולהגדיר את הכרטיסייה Arguments בהגדרות של ניפוי הבאגים של Eclipse כך: -- package <package to run> instrument.

ניפוי באגים מרחוק באמצעות Eclipse

יש לפעול לפי השלבים הבאים כדי לנפות באגים מרחוק בסשן של מוצרים שהתחלתם ב-Trends שורת הפקודה tradefed.sh:

  1. מפעילים את triFedEx.sh עם הדגל של ניפוי הבאגים: TF_DEBUG=1 tradefed.sh
  2. ממתינים עד שתוצג ההודעה מה-JVM: Listening for transport dt_socket at address: 10088. המשמעות היא שה-JVM ממתין לניפוי באגים על צירוף ביציאה 10088.
  3. צירוף באמצעות ניפוי באגים מרחוק של Eclipse מהתפריט הראשי: בוחרים באפשרות הפעלה > ניפוי באגים הגדרות אישיות...
  4. בתיבת הדו-שיח הקופצת, בוחרים באפשרות Remote Java Application (אפליקציית Java מרוחקת) מהתפריט השמאלי.
  5. לוחצים על הסמל NewLaunch configuration (הגדרת השקה חדשה) בסרגל הפעולות.
  6. נותנים למערך ההגדרות את השם הרצוי ובוחרים באפשרות tradefederation בתור פרויקט.
  7. אכלס את היציאה באמצעות הכתובת שסיפקת קודם.
  8. עוברים לכרטיסייה Source ומוסיפים את הפרויקטים tradefederation ו google-tradefed אל הנתיב לחיפוש מקור.
  9. לוחצים על ניפוי באגים כדי להתחיל את סשן ניפוי הבאגים.

הכלי לניפוי באגים נצמד לתהליך ה-JVM של ההאזנה, והטרמינל פועל ההודעה tf> מוצגת ב-tradefed.sh.

כדי לעבור בקוד במצב ניפוי באגים, צריך להגדיר נקודת עצירה ב-Eclipse ולהפעיל את הפקודה של MerchantF (כלומר run <test>) בטרמינל. כדי לנפות באגים במהלך ההפעלה של טקסט TF, אפשר להגדיר קודם את נקודת ההפסקה ואז לצרף את ליקוי חמה לניפוי באגים.

טיפ: כדי להשתמש ביציאה חלופית, מוסיפים את TF_DEBUG_PORT=nnn לפקודה בשלב 1 למעלה. אפשר להשתמש בו גם בסביבת הייצור אם תיקון באגים כדי לבדוק: שינוי suspend=y ל-suspend=n ב-tradefed.sh ו מתחיל בסימון ניפוי באגים. ה-JVM לא תמתין לצירוף הכלי לניפוי באגים, אבל אפשר לעשות זאת כך בכל שלב, כל עוד התהליך עדיין פועל.

ניפוי באגים מרחוק באמצעות JDB

כדי להשתמש ב-JDB של הכלי לניפוי באגים ב-Java, מבצעים את השלבים שנראים כמו אלה של Eclipse:

  1. מתחילים את tradefed.sh עם הדגל של ניפוי הבאגים: TF_DEBUG=1 tradefed.sh
  2. ממתינים עד שתוצג ההודעה מ-JVM: Listening for transport dt_socket at address: 10088.
  3. חיבור jdb. לדוגמה, מהרצת croot:

    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 כדי לבצע כיסוי הקוד.