StrictShardHelper

public class StrictShardHelper
extends ShardHelper

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


함께 보고하지 않는 엄격한 샤드를 만드는 샤딩 전략

요약

공개 생성자

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입니다.