StrictShardHelper

public class StrictShardHelper
extends ShardHelper

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


Stratégie de segmentation visant à créer des segments stricts qui ne génèrent pas de rapports ensemble.

Résumé

Constructeurs publics

StrictShardHelper()

Méthodes publiques

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

Tentative de segmentation de la configuration en sous-configurations, dont l'exécution sera reprogrammée plusieurs ressources en parallèle.

Méthodes protégées

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)

Divisez la liste des tests à exécuter en fonction de l'implémentation qui vous convient.

Constructeurs publics

StrictShardHelper

public StrictShardHelper ()

Méthodes publiques

Configuration de segment

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

Tentative de segmentation de la configuration en sous-configurations, dont l'exécution sera reprogrammée plusieurs ressources en parallèle.

Une action de segmentation réussie rend la configuration actuelle vide, et l'appel ne doit pas continuer.

Paramètres
config IConfiguration: IConfiguration actuelle.

testInfo TestInformation: TestInformation contenant les informations sur les tests.

rescheduler IRescheduler: IRescheduler

logger ITestLogger

Renvoie
boolean Valeur true si le test a été segmenté. Sinon, renvoyez false

Méthodes protégées

Configuration de segmentdynamique

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

Paramètres
config IConfiguration

testInfo TestInformation

rescheduler IRescheduler

logger ITestLogger

Renvoie
boolean

segmentConfigInterne

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

Paramètres
config IConfiguration

testInfo TestInformation

rescheduler IRescheduler

logger ITestLogger

Renvoie
boolean

Tests fractionnés

protected  splitTests ( fullList, 
                int shardCount, 
                boolean useEvenModuleSharding)

Divisez la liste des tests à exécuter en fonction de l'implémentation qui vous convient. La segmentation doit être cohérentes. Il est possible de renvoyer une liste vide si aucun test ne peut être exécuté dans la partition.

Implémentez cela pour fournir une segmentation spécifique à la suite de tests. La valeur par défaut tente d'équilibrer autant que possible le nombre d'IRemoteTest par segments. dans un premier temps, utilisez un critère mineur ou un indice d'exécution pour ajuster un peu plus les listes.

Paramètres
fullList : liste complète initiale de IRemoteTest contenant tous les tests qui à exécuter.

shardCount int: nombre total de segments à exécuter.

useEvenModuleSharding boolean: indique s'il faut utiliser une stratégie qui répartit équitablement le nombre de modules sur plusieurs segments

Renvoie
Liste de listes IRemoteTest ayant été attribuées à chaque segment. La liste correspondra au nombre de segments.