ShardListener

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

java.lang.Object
   ↳ com.android.tradefed.result.CollectingTestListener
     ↳ com.android.tradefed.invoker.ShardListener


एक ITestInvocationListener, जो इनवोकेशन शार्ड (इसे इनवोकेशन स्प्लिट भी कहा जाता है. इसका इस्तेमाल, कई संसाधनों पर एक साथ चलाने के लिए किया जाता है) से नतीजे इकट्ठा करता है और उन्हें किसी दूसरे लिसनर को भेजता है.

खास जानकारी

सार्वजनिक कंस्ट्रक्टर

ShardListener(ITestInvocationListener main)

ShardListener बनाएं.

पब्लिक मेथड

List<ITestInvocationListener> getUnderlyingResultReporter()
void invocationEnded(long elapsedTime)

यह रिपोर्ट करती है कि इनवॉकेशन खत्म हो गया है. भले ही, यह काम सही तरीके से हुआ हो या किसी गड़बड़ी की वजह से.

void invocationFailed(FailureDescription failure)

किसी गड़बड़ी की वजह से, यह कुकी इनवोकेशन पूरा न होने की सूचना देती है.

void invocationFailed(Throwable cause)

किसी गड़बड़ी की वजह से, यह कुकी इनवोकेशन पूरा न होने की सूचना देती है.

void invocationSkipped(SkipReason reason)

इस फ़ंक्शन का इस्तेमाल, किसी इनवोकेशन को 'अभी नहीं' के तौर पर रिपोर्ट करने के लिए किया जाता है

void invocationStarted(IInvocationContext context)

यह कुकी, टेस्ट शुरू होने की जानकारी देती है.

void logAssociation(String dataName, LogFile logFile)

कुछ मामलों में, लॉग को टेस्ट केस से जोड़ा जाना ज़रूरी होता है. हालांकि, सीधे testLogSaved(String,LogDataType,InputStreamSource,LogFile) कॉलबैक पर ऐसा नहीं किया जा सकता.

void setSupportGranularResults(boolean enableGranularResults)
boolean supportGranularResults()

अगर रिपोर्टर, ज़्यादा जानकारी वाले नतीजे दिखाता है, तो True वैल्यू मिलती है. ऐसा न होने पर, False वैल्यू मिलती है.

void testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)

यह टेस्ट शुरू करने से जुड़ा लॉग या डीबग डेटा उपलब्ध कराता है.

void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

void testModuleEnded()

यह कुकी, मॉड्यूल के रन के खत्म होने की जानकारी देती है.

void testModuleStarted(IInvocationContext moduleContext)

यह कुकी, मॉड्यूल के चलने की शुरुआत की जानकारी देती है.

void testRunEnded(long elapsedTime, HashMap<String, MetricMeasurement.Metric> runMetrics)

यह कुकी, टेस्ट रन के खत्म होने की जानकारी देती है.

void testRunFailed(FailureDescription failure)

FailureDescription की वजह से, रिपोर्ट टेस्ट रन पूरा नहीं हो सका.

void testRunFailed(String failureMessage)

गंभीर गड़बड़ी की वजह से, रिपोर्ट के टेस्ट रन को पूरा नहीं किया जा सका.

void testRunStarted(String name, int numTests, int attemptNumber, long startTime)

यह कुकी, टेस्ट रन शुरू होने की जानकारी देती है.

सार्वजनिक कंस्ट्रक्टर

ShardListener

public ShardListener (ITestInvocationListener main)

ShardListener बनाएं.

पैरामीटर
main ITestInvocationListener: वह ITestInvocationListener जहां नतीजों को फ़ॉरवर्ड किया जाना चाहिए. अन्य ShardListener के साथ टकराव को रोकने के लिए, यह ऑब्जेक्ट नतीजे फ़ॉरवर्ड करते समय main पर सिंक हो जाएगा. इसके अलावा, नतीजे सिर्फ़ तब भेजे जाएंगे, जब इनवोकेशन शार्ड पूरा हो जाएगा.

पब्लिक मेथड

getUnderlyingResultReporter

public List<ITestInvocationListener> getUnderlyingResultReporter ()

रिटर्न
List<ITestInvocationListener>

invocationEnded

public void invocationEnded (long elapsedTime)

यह रिपोर्ट करती है कि इनवॉकेशन खत्म हो गया है. भले ही, यह काम सही तरीके से हुआ हो या किसी गड़बड़ी की वजह से.

इसे TradeFederation फ़्रेमवर्क अपने-आप कॉल करेगा.

पैरामीटर
elapsedTime long: फ़ंक्शन को कॉल करने में लगा समय, मिलीसेकंड में

invocationFailed

public void invocationFailed (FailureDescription failure)

किसी गड़बड़ी की वजह से, यह कुकी इनवोकेशन पूरा न होने की सूचना देती है.

इसे TradeFederation फ़्रेमवर्क अपने-आप कॉल करेगा.

पैरामीटर
failure FailureDescription: FailureDescription, जिसमें अनुरोध पूरा न होने की वजह बताई गई है

invocationFailed

public void invocationFailed (Throwable cause)

किसी गड़बड़ी की वजह से, यह कुकी इनवोकेशन पूरा न होने की सूचना देती है.

इसे TradeFederation फ़्रेमवर्क अपने-आप कॉल करेगा.

पैरामीटर
cause Throwable: Throwable की वजह से टेस्ट पूरा नहीं हो सका

invocationSkipped

public void invocationSkipped (SkipReason reason)

इस फ़ंक्शन का इस्तेमाल, किसी इनवोकेशन को 'अभी नहीं' के तौर पर रिपोर्ट करने के लिए किया जाता है

पैरामीटर
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

यह कुकी, टेस्ट शुरू होने की जानकारी देती है.

इसे TradeFederation फ़्रेमवर्क अपने-आप कॉल करेगा. रिपोर्टर को इस तरीके को बदलना होगा, ताकि एक से ज़्यादा डिवाइसों से रिपोर्टिंग की जा सके.

पैरामीटर
context IInvocationContext: शुरू करने के बारे में जानकारी

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

कुछ मामलों में, लॉग को टेस्ट केस से जोड़ा जाना ज़रूरी होता है. हालांकि, सीधे testLogSaved(String,LogDataType,InputStreamSource,LogFile) कॉलबैक पर ऐसा नहीं किया जा सकता. इसलिए, यह कॉलबैक साफ़ तौर पर एक मज़बूत असोसिएशन उपलब्ध कराने की अनुमति देता है.

पैरामीटर
dataName String: डेटा का नाम

logFile LogFile: वह LogFile जिसे पहले लॉग किया गया था और जिसे टेस्ट केस से जोड़ा जाना चाहिए.

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

पैरामीटर
enableGranularResults boolean

supportGranularResults

public boolean supportGranularResults ()

अगर रिपोर्टर, ज़्यादा जानकारी वाले नतीजे दिखाता है, तो True वैल्यू मिलती है. ऐसा न होने पर, False वैल्यू मिलती है.

रिटर्न
boolean

testLog

public void testLog (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

यह टेस्ट शुरू करने से जुड़ा लॉग या डीबग डेटा उपलब्ध कराता है.

इसे ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) या ERROR(/ITestInvocationListener#invocationEnded(long)) से पहले कॉल किया जाना चाहिए

TradeFederation फ़्रेमवर्क इस तरीके को अपने-आप कॉल करेगा. इसमें होस्ट लॉग और अगर लागू हो, तो डिवाइस लॉगकैट शामिल होगा.

पैरामीटर
dataName String: डेटा का String जानकारी देने वाला नाम. उदाहरण के लिए, "device_logcat". ध्यान दें dataName, हर इनवोकेशन के लिए यूनीक नहीं हो सकता. इसका मतलब है कि लागू करने वालों को एक ही dataName के साथ कई कॉल मैनेज करने में सक्षम होना चाहिए

dataType LogDataType: डेटा का LogDataType

dataStream InputStreamSource: डेटा का InputStreamSource. डेटा को पढ़ना शुरू करने के लिए, लागू करने वालों को createInputStream को कॉल करना चाहिए. साथ ही, यह पक्का करना चाहिए कि जब डेटा पढ़ना पूरा हो जाए, तब InputStream को बंद कर दिया जाए. कॉल करने वालों को यह पक्का करना चाहिए कि डेटा का सोर्स, testLog तरीके के पूरा होने तक मौजूद रहे और उसे ऐक्सेस किया जा सके.

testLogSaved

public void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

पैरामीटर
dataName String

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

testModuleEnded

public void testModuleEnded ()

यह कुकी, मॉड्यूल के रन के खत्म होने की जानकारी देती है.

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

यह कुकी, मॉड्यूल के चलने की शुरुआत की जानकारी देती है. यह कॉलबैक, testModuleEnded() से जुड़ा है. साथ ही, यह क्रम में ज़रूरी नहीं है. इसका इस्तेमाल सिर्फ़ ऐसे रन के दौरान किया जाता है जो मॉड्यूल का इस्तेमाल करते हैं: सुइट आधारित रनर.

पैरामीटर
moduleContext IInvocationContext: मॉड्यूल का IInvocationContext.

testRunEnded

public void testRunEnded (long elapsedTime, 
                HashMap<String, MetricMeasurement.Metric> runMetrics)

यह कुकी, टेस्ट रन के खत्म होने की जानकारी देती है. FIXME: We cannot have two Map<> interfaces with different type, so we have to use HashMap here.

पैरामीटर
elapsedTime long: डिवाइस ने मिलीसेकंड में बीता हुआ समय रिपोर्ट किया

runMetrics HashMap: Metric के साथ टेस्ट रन के आखिर में रिपोर्ट किए गए की-वैल्यू पेयर.

testRunFailed

public void testRunFailed (FailureDescription failure)

FailureDescription की वजह से, रिपोर्ट टेस्ट रन पूरा नहीं हो सका.

पैरामीटर
failure FailureDescription: FailureDescription में गड़बड़ी और उसके संदर्भ के बारे में बताया गया हो.

testRunFailed

public void testRunFailed (String failureMessage)

गंभीर गड़बड़ी की वजह से, रिपोर्ट के टेस्ट रन को पूरा नहीं किया जा सका.

पैरामीटर
failureMessage String: String, रन फ़ेल होने की वजह के बारे में बताता है.

testRunStarted

public void testRunStarted (String name, 
                int numTests, 
                int attemptNumber, 
                long startTime)

यह कुकी, टेस्ट रन शुरू होने की जानकारी देती है.

पैरामीटर
name String: टेस्ट रन का नाम

numTests int: टेस्ट रन में कुल टेस्ट की संख्या

attemptNumber int: ऑर्डर नंबर, जो एक ही runName के अलग-अलग प्रयासों की पहचान करता है. यह कई बार चलता है. attemptNumber, 0 से शुरू होता है और हर बार नया रन होने पर इसे बढ़ाना चाहिए. उदाहरण के लिए, अगर किसी टेस्ट को तीन बार फिर से चलाया जाता है, तो उसे एक ही runName के तहत कुल चार बार चलाया जाना चाहिए. साथ ही, attemptNumber 0 से 3 तक होना चाहिए.

startTime long: दौड़ शुरू होने का समय, जिसे System.currentTimeMillis() के ज़रिए मेज़र किया जाता है