מחזור החיים של בדיקות TF

מחזור החיים של בדיקה שמתבצעת באמצעות Trade Federation מורכב מארבעה שלבים נפרדים, שנוצרו סביב ממשקים מוגדרים באופן רשמי.

ממשקים מוגדרים

  • Build Provider: מספק גרסת build לבדיקה, ומוריד את הקבצים המתאימים במקרה הצורך.
  • Target Preparer: הכנת סביבת הבדיקה, כולל התקנת תוכנה והגדרת המכשיר.
  • בדיקה: הפעלת בדיקות ואיסוף תוצאות הבדיקה. זה יכול להיות כל בדיקת JUnit, אבל הממשק IRemoteTest שלנו תוכנן במיוחד לפעול היטב בסביבת Trade Federation.
  • Test Invocation Listener (דיווח על תוצאות): מאזין לתוצאות הבדיקה, בדרך כלל כדי להעביר את תוצאות הבדיקה למאגר או להציג אותן ל-Test Runner.

הישות הבסיסית לבדיקה ב-TF היא הגדרה (config). קובץ תצורה הוא קובץ XML שמצהיר על רכיבי מחזור החיים של בדיקה.

ההפרדה הזו של מחזור החיים של הבדיקה נועדה לאפשר שימוש חוזר. בעזרת התכנון הזה, המפתח יכול ליצור בדיקה פעם אחת, ואז המאגר יכול ליצור הגדרות שונות כדי להריץ את הבדיקה הזו בסביבות שונות. לדוגמה, אפשר ליצור הגדרה שתריץ בדיקה במחשב המקומי ותשליך את התוצאה ל-stdout. לאחר מכן, הם יכולים ליצור הגדרה שנייה שתפעיל את אותו הבדיקה, אבל תשתמש ב-Test Invocation Listener אחר כדי לאחסן את תוצאות הבדיקה במסד נתונים. אפשר גם להגדיר הגדרה שלישית להפעלת הבדיקה באופן רציף ממעבדת בדיקות כלשהי.

חשוב לציין כאן שפקודה היא הגדרה יחד עם הארגומנטים שלה בשורת הפקודה (כפי שסופקו על ידי Test Runner). כש-TF מקצה פקודה ל-ITestDevice ומריץ אותה, האובייקט שנוצר נקרא קריאה. בקצרה, קריאה כוללת ביצוע מלא של בדיקת TF, במהלך כל מחזור החיים שלה.

רכיבי תצורה נוספים

  • שחזור מכשיר: מנגנון לשחזור התקשורת עם המכשיר במקרה של אובדן.
  • יומן: אוסף נתוני רישום ביומן של נתונים עסקיים.

פלט ושגיאות של שלב

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

ספק build

בשלב הזה נוצר אובייקט IBuildInfo שמכיל את כל הפניות הקבצים הנדרשות להגדרה ולהרצה של הבדיקות, והפלט שלו הוא האובייקט הזה.

השגיאה הנפוצה ביותר בשלב הזה היא אי היכולת להוריד או למצוא את הקבצים המבוקשים.

שגיאה בשלב הזה תגרום לדיווח ישיר על השגיאה, ללא הפעלת בדיקות.

הכנת היעד

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

שגיאות נפוצות בשלב הזה כוללות בדרך כלל כשל בהגדרת המכשיר למצב נתון (לדוגמה, כשל בעדכון הקושחה) וכשל באיתור הקבצים הנדרשים להגדרה.

שגיאה בשלב הזה תגרום להפעלת ניקוי היעד, לדיווח על השגיאה ולא להרצת בדיקות.

בדיקות

בשלב הזה מריצים את הבדיקות המבוקשות ביעד שהוכן מראש, ומדווחים על כל תוצאות ביצוע הבדיקה.

שגיאות נפוצות בשלב הזה בדרך כלל קשורות לכך שהיעד שנבדק לא זמין או לשגיאה כלשהי שגורמת להפעלה חלקית של הבדיקות. השגיאות האלה הן בעיות בתשתית שמשפיעות על ביצוע הבדיקה עצמו, בניגוד לכשל של מקרה בדיקה יחיד.

שגיאה בשלב הזה תגרום להפסקת ביצוע הבדיקה, להפעלת ניקוי היעד, לדיווח על השגיאה ולקבלת תוצאות חלקיות.

דיווח על תוצאות

בשלב הזה מתבצע דיווח על התוצאות והשגיאות לשירותים שהוגדרו (למשל, שרתים וקובצי מקומיים).

יכולות להיות שגיאות בדיווח על תוצאות ספציפיות, אבל הן מבודדות זו מזו (כלי דיווח אחד לא רואה שגיאות מכלי דיווח אחר). השגיאות האלה משפיעות רק על הדיווח של כל מדווח על התוצאות שלו, ואפשר לראות אותן ביומנים.