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)
List<List<IRemoteTest>> splitTests(List<IRemoteTest> 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: the IRescheduler

logger ITestLogger

रिटर्न
boolean अगर टेस्ट को शार्ड किया गया है, तो 'सही' वैल्यू दिखाता है. वरना, 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 List<List<IRemoteTest>> splitTests (List<IRemoteTest> fullList, 
                int shardCount, 
                boolean useEvenModuleSharding)

टेस्ट की सूची को बांटना, ताकि उन्हें लागू करने के तरीके के हिसाब से चलाया जा सके. शार्डिंग एक जैसी होनी चाहिए. अगर शार्ड में कोई टेस्ट नहीं चलाया जा सकता, तो खाली सूची दिखाई जा सकती है.

टेस्ट सुइट के हिसाब से शार्डिंग की सुविधा देने के लिए, इसे लागू करें. डिफ़ॉल्ट तौर पर, सबसे पहले हर शार्ड के लिए IRemoteTest की संख्या को बैलेंस करने की कोशिश की जाती है. इसके बाद, सूचियों को थोड़ा और अडजस्ट करने के लिए, मामूली शर्तों या रन-हिंट का इस्तेमाल किया जाता है.

पैरामीटर
fullList List: IRemoteTest की शुरुआती पूरी सूची, जिसमें वे सभी टेस्ट शामिल होते हैं जिन्हें चलाना ज़रूरी है.

shardCount int: शार्ड की कुल संख्या.

useEvenModuleSharding boolean: यह तय करने के लिए कि ऐसी रणनीति का इस्तेमाल करना है या नहीं जिससे शार्ड में मॉड्यूल की संख्या बराबर हो

रिटर्न
List<List<IRemoteTest>> IRemoteTest की सूचियों की सूची, जिन्हें हर शार्ड को असाइन किया गया है. सूची का साइज़, shardCount होगा.