StrictShardHelper

public class StrictShardHelper
extends ShardHelper

java.lang.Object
   ↳ com.android.tradefed.invoker.shard.ShardHelper
     ↳ com.android.tradefed.invoker.shard.StrictShardHelper


אסטרטגיית חלוקה לקטעים (Sharding) ליצירת קטעים נוקשים שלא מדווחים יחד,

סיכום

קונסטרוקטורים גלויים לכולם

StrictShardHelper()

שיטות ציבוריות

boolean shardConfig(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)

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

שיטות מוגנות

boolean shardConfigDynamic(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
boolean shardConfigInternal(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
splitTests( fullList, int shardCount, boolean useEvenModuleSharding)

אפשר לפצל את רשימת הבדיקות לבדיקה לפי הצורך של ההטמעה.

קונסטרוקטורים גלויים לכולם

StrictShardHelper

public StrictShardHelper ()

שיטות ציבוריות

shardConfig

public boolean shardConfig (IConfiguration config, 
                TestInformation testInfo, 
                IRescheduler rescheduler, 
                ITestLogger logger)

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

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

פרמטרים
config IConfiguration: הערך הנוכחי של IConfiguration.

testInfo TestInformation: ה-TestInformation שמכיל את פרטי הבדיקות.

rescheduler IRescheduler: IRescheduler

logger ITestLogger

החזרות
boolean true אם הבדיקה חולקה למקטעים. אחרת, מחזירים את הערך false

שיטות מוגנות

shardConfigDynamic

protected boolean shardConfigDynamic (IConfiguration config, 
                TestInformation testInfo, 
                IRescheduler rescheduler, 
                ITestLogger logger)

פרמטרים
config IConfiguration

testInfo TestInformation

rescheduler IRescheduler

logger ITestLogger

החזרות
boolean

shardConfigInternal

protected boolean shardConfigInternal (IConfiguration config, 
                TestInformation testInfo, 
                IRescheduler rescheduler, 
                ITestLogger logger)

פרמטרים
config IConfiguration

testInfo TestInformation

rescheduler IRescheduler

logger ITestLogger

החזרות
boolean

splitTests

protected  splitTests ( fullList, 
                int shardCount, 
                boolean useEvenModuleSharding)

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

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

פרמטרים
fullList : הרשימה המלאה הראשונית של IRemoteTest שמכילה את כל הבדיקות שצריך להריץ.

shardCount int: המספר הכולל של פלחים שצריך להריץ.

useEvenModuleSharding boolean: האם להשתמש בשיטה שמחלקת באופן שווה את מספר המודולים בין הפיצולים

החזרות
רשימה של רשימות IRemoteTest שהוקצו לכל שריד. גודל הרשימה יהיה shardCount.