השתמש שוב בניסיון שוב

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

יתכן שכמות גדולה של בדיקות תיכשל עקב בידוד לקוי או התקנים שהולכים למצב לא טוב.

תכונת הניסוי החודשית של הסוויטה נועדה לתת מענה לאותם מקרים: היא מאפשרת לך לנסות שוב את הכשלים רק במקום החבילות המלאות על מנת לשלול שטויות ובידוד לקוי. אם הבדיקה נכשלת באופן עקבי, הניסוי החוזר גם ייכשל; ואתה מקבל אות חזק בהרבה שיש בעיה אמיתית.

נסה שוב את הסוויטה

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

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

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

ניסיון חבילה לדוגמה: CTS

תצורת הניסוי החוזר ב- CTS היא:

<configuration description="Runs a retry of a previous CTS session.">
    <object type="previous_loader" class="com.android.compatibility.common.tradefed.result.suite.PreviousResultLoader" />
    <test class="com.android.tradefed.testtype.suite.retry.RetryRescheduler" />

    <logger class="com.android.tradefed.log.FileLogger">
        <option name="log-level-display" value="WARN" />
    </logger>
</configuration>

זה חל על רוב הסוויטות שמרחיבים אותו, למשל VTS ).

זה יופעל באמצעות:

cts-tradefed run retry --retry <session>

הפגישה תימצא על ידי רישום התוצאות הקודמות במסוף CTS:

cts-tf > l r
Session  Pass  Fail  Modules Complete  Result Directory     Test Plan  Device serial(s)  Build ID   Product
0        2092  30    148 of 999        2018.10.29_14.12.57  cts        [serial]          P          Pixel

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

לדוגמה:

cts-tradefed run cts-dev -m CtsGestureTestCases

Retry התשובות נכונות תמיד יהיה מתוחם CtsGestureTestCases מאז אנו מבצעים ניסיון חוזר פקודה כי מעורבים בה רק.

הגדר נסיון חוזר לסוויטה בסגנון CTS

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

<result_reporter class="com.android.compatibility.common.tradefed.result.suite.CompatibilityProtoResultReporter" />

זה צריך להוסיף את תצורת ה- XML של פקוד העיקרית, והיא תגרום test-record.pb קובץ להיווצר בתיקיית התוצאה.

Retry CTS אז טוענת נתונים משילוב של test-record.pb ואת הקיים test_result.xml להכין השבעה נסה שנית.