StrictShardHelper
public class StrictShardHelper
extends ShardHelper
java.lang.Object | ||
↳ | com.android.tradefed.invoker.shard.ShardHelper | |
↳ | com.android.tradefed.invoker.shard.StrictShardHelper |
Sharding-Strategie zur Erstellung strenger Shards, die nicht zusammen gemeldet werden,
Zusammenfassung
Öffentliche Konstrukteure | |
---|---|
StrictShardHelper () |
Öffentliche Methoden | |
---|---|
boolean | shardConfig ( IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger) Versuchen Sie, die Konfiguration in Unterkonfigurationen aufzuteilen, um sie so neu zu planen, dass sie auf mehreren Ressourcen parallel ausgeführt wird. |
Geschützte Methoden | |
---|---|
splitTests ( fullList, int shardCount) splitTests ( fullList, int shardCount) Teilen Sie die Liste der auszuführenden Tests auf, wie auch immer die Implementierung dies für richtig hält. |
Öffentliche Konstrukteure
StrictShardHelper
public StrictShardHelper ()
Öffentliche Methoden
shardConfig
public boolean shardConfig (IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
Versuchen Sie, die Konfiguration in Unterkonfigurationen zu unterteilen, um sie so neu zu planen, dass sie auf mehreren Ressourcen gleichzeitig ausgeführt wird.
Eine erfolgreiche Shard-Aktion macht die aktuelle Konfiguration leer und der Aufruf sollte nicht fortgesetzt werden.
Parameter | |
---|---|
config | IConfiguration : Die aktuelle IConfiguration . |
testInfo | TestInformation : Die TestInformation , die die TestInformation enthält. |
rescheduler | IRescheduler : Der IRescheduler |
logger | ITestLogger |
Kehrt zurück | |
---|---|
boolean | wahr, wenn der Test abgebrochen wurde. Andernfalls geben Sie false |
Geschützte Methoden
splitTests
protectedsplitTests ( fullList, int shardCount)
Teilen Sie die Liste der auszuführenden Tests auf, wie auch immer die Implementierung dies für richtig hält. Sharding muss konsistent sein. Es ist akzeptabel, eine leere Liste zurückzugeben, wenn im Shard keine Tests ausgeführt werden können.
Implementieren Sie dies, um ein Testsuite-spezifisches Sharding bereitzustellen. Die Standardimplementierung versucht als ersten Schritt, die Anzahl der IRemoteTest pro Shard so weit wie möglich auszugleichen. Verwenden Sie dann ein kleines Kriterium oder einen Run-Hinweis, um die Listen etwas weiter anzupassen.
Parameter | |
---|---|
fullList | IRemoteTest mit allen Tests, die ausgeführt werden müssen. |
shardCount | int : Die Gesamtzahl der Shards, die ausgeführt werden müssen. |
Kehrt zurück | |
---|---|
Eine Liste der IRemoteTest , die jedem Shard zugewiesen wurden. Die Listengröße ist shardCount. |