BugreportCollector
public
class
BugreportCollector
extends Object
implements
ITestInvocationListener
| java.lang.Object | |
| ↳ | com.android.tradefed.result.BugreportCollector |
यह एक पास-थ्रू ITestInvocationListener है. यह कॉन्फ़िगर किए जा सकने वाले इवेंट होने पर, गड़बड़ी की रिपोर्ट इकट्ठा करता है. इसके बाद, गड़बड़ी की हर रिपोर्ट इकट्ठा होने के बाद, यह अपने चाइल्ड पर ITestInvocationListener.testLog को कॉल करता है.
बर्ताव: (FIXME: finish this)
- अगर कोई टेस्ट केस फ़ेल हो जाता है, तो हर टेस्ट केस के बाद कैप्चर करें
- हर टेस्ट केस के बाद कैप्चर करें
- हर टेस्ट केस के फ़ेल होने के बाद कैप्चर करें
- कैप्चर करें
खास जानकारी
नेस्टेड क्लास | |
|---|---|
class |
BugreportCollector.Predicate
पूरा प्रेडिकेट, जिसमें यह बताया गया हो कि बग रिपोर्ट कब कैप्चर करनी है. |
interface |
BugreportCollector.SubPredicate
|
फ़ील्ड | |
|---|---|
public
static
final
BugreportCollector.Predicate |
AFTER_FAILED_TESTCASES
पहले से तय किया गया ऐसा प्रेडिकेट जो जांच के हर मामले के फ़ेल होने के बाद ट्रिगर होता है |
public
static
final
BugreportCollector.Predicate |
AT_START
पहले से तय किया गया प्रेडिकेट, जो पहले इनवोकेशन के शुरू होते ही ट्रिगर हो जाता है |
सार्वजनिक कंस्ट्रक्टर | |
|---|---|
BugreportCollector(ITestInvocationListener listener, ITestDevice testDevice)
|
|
पब्लिक मेथड | |
|---|---|
void
|
addPredicate(BugreportCollector.Predicate p)
|
void
|
blockUntilIdle()
जब तक कलेक्टर गड़बड़ी की कोई रिपोर्ट इकट्ठा नहीं कर रहा है, तब तक ब्लॉक करें. |
TestSummary
|
getSummary()
इस अनुमति से, InvocationListener को खास जानकारी दिखाने की सुविधा मिलती है. |
void
|
invocationEnded(long elapsedTime)
यह रिपोर्ट करती है कि इनवॉकेशन खत्म हो गया है. भले ही, यह काम सही तरीके से हुआ हो या किसी गड़बड़ी की वजह से. |
void
|
invocationFailed(Throwable cause)
किसी गड़बड़ी की वजह से, यह कुकी इनवोकेशन पूरा न होने की सूचना देती है. |
void
|
invocationStarted(IInvocationContext context)
यह कुकी, टेस्ट शुरू होने की जानकारी देती है. |
void
|
setAsynchronous(boolean asynchronous)
सेट करें कि गड़बड़ी की रिपोर्ट इकट्ठा करने के दौरान, गड़बड़ी की रिपोर्ट को किसी दूसरे थ्रेड में इकट्ठा किया जाना चाहिए ( |
void
|
setDescriptiveName(String name)
बग रिपोर्ट रिकॉर्ड करते समय इस्तेमाल करने के लिए, जानकारी देने वाला नाम सेट करें. |
void
|
setDeviceWaitTime(int waitTime)
यह विकल्प, उस समय को सेकंड में सेट करता है जब डिवाइस के ऑनलाइन होने का इंतज़ार किया जाता है. इसके बाद, हम बग रिपोर्ट कैप्चर करने की कोशिश करते हैं. |
void
|
testAssumptionFailure(TestDescription test, String trace)
इस फ़ंक्शन को तब कॉल किया जाता है, जब कोई ऐटॉमिक टेस्ट यह फ़्लैग करता है कि वह ऐसी शर्त मान रहा है जो गलत है |
void
|
testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
यह कुकी, किसी टेस्ट केस के खत्म होने की जानकारी देती है. |
void
|
testFailed(TestDescription test, String trace)
यह किसी टेस्ट केस के फ़ेल होने की जानकारी देता है. |
void
|
testIgnored(TestDescription test)
इस फ़ंक्शन को तब कॉल किया जाता है, जब कोई टेस्ट नहीं चलाया जाता. आम तौर पर, ऐसा इसलिए होता है, क्योंकि टेस्ट के तरीके को org.junit.Ignore के साथ एनोटेट किया जाता है. |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
यह टेस्ट शुरू करने से जुड़ा लॉग या डीबग डेटा उपलब्ध कराता है. |
void
|
testRunEnded(long elapsedTime, HashMap<String, MetricMeasurement.Metric> runMetrics)
यह कुकी, टेस्ट रन के खत्म होने की जानकारी देती है. |
void
|
testRunFailed(String errorMessage)
गंभीर गड़बड़ी की वजह से, रिपोर्ट के टेस्ट रन को पूरा नहीं किया जा सका. |
void
|
testRunStarted(String runName, int testCount)
यह कुकी, टेस्ट रन शुरू होने की जानकारी देती है. |
void
|
testRunStopped(long elapsedTime)
उपयोगकर्ता के अनुरोध की वजह से, रिपोर्ट के टेस्ट रन को पूरा होने से पहले ही रोक दिया गया. |
void
|
testStarted(TestDescription test)
यह फ़ंक्शन, किसी टेस्ट केस के शुरू होने की जानकारी देता है. |
फ़ील्ड
AFTER_FAILED_TESTCASES
public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES
पहले से तय किया गया ऐसा प्रेडिकेट जो जांच के हर मामले के फ़ेल होने के बाद ट्रिगर होता है
AT_START
public static final BugreportCollector.Predicate AT_START
पहले से तय किया गया प्रेडिकेट, जो पहले इनवोकेशन के शुरू होते ही ट्रिगर हो जाता है
सार्वजनिक कंस्ट्रक्टर
BugreportCollector
public BugreportCollector (ITestInvocationListener listener, ITestDevice testDevice)
| पैरामीटर | |
|---|---|
listener |
ITestInvocationListener |
testDevice |
ITestDevice |
पब्लिक मेथड
addPredicate
public void addPredicate (BugreportCollector.Predicate p)
| पैरामीटर | |
|---|---|
p |
BugreportCollector.Predicate |
blockUntilIdle
public void blockUntilIdle ()
जब तक कलेक्टर कोई गड़बड़ी की रिपोर्ट इकट्ठा नहीं कर रहा है, तब तक ब्लॉक करें. अगर कलेक्टर, गड़बड़ी की रिपोर्ट इकट्ठा नहीं कर रहा है, तो तुरंत वापस आएं
getSummary
public TestSummary getSummary ()
इस अनुमति से, InvocationListener को खास जानकारी दिखाने की सुविधा मिलती है.
| रिटर्न | |
|---|---|
TestSummary |
दौड़ के बारे में जानकारी देने वाला TestSummary या शून्य |
invocationEnded
public void invocationEnded (long elapsedTime)
यह रिपोर्ट करती है कि इनवॉकेशन खत्म हो गया है. भले ही, यह काम सही तरीके से हुआ हो या किसी गड़बड़ी की वजह से.
इसे TradeFederation फ़्रेमवर्क अपने-आप कॉल करेगा.
| पैरामीटर | |
|---|---|
elapsedTime |
long: फ़ंक्शन को कॉल करने में लगा समय, मिलीसेकंड में |
invocationFailed
public void invocationFailed (Throwable cause)
किसी गड़बड़ी की वजह से, यह कुकी इनवोकेशन पूरा न होने की सूचना देती है.
इसे TradeFederation फ़्रेमवर्क अपने-आप कॉल करेगा.
| पैरामीटर | |
|---|---|
cause |
Throwable: Throwable की वजह से टेस्ट पूरा नहीं हो सका |
invocationStarted
public void invocationStarted (IInvocationContext context)
यह कुकी, टेस्ट शुरू होने की जानकारी देती है.
इसे TradeFederation फ़्रेमवर्क अपने-आप कॉल करेगा. रिपोर्टर को इस तरीके को बदलना होगा, ताकि एक से ज़्यादा डिवाइसों से रिपोर्टिंग की जा सके.
| पैरामीटर | |
|---|---|
context |
IInvocationContext: शुरू करने के बारे में जानकारी |
setAsynchronous
public void setAsynchronous (boolean asynchronous)
सेट करें कि गड़बड़ी की रिपोर्ट इकट्ठा करने के दौरान, गड़बड़ी की रिपोर्ट को किसी दूसरे थ्रेड में इकट्ठा किया जाना चाहिए (asynchronous = true) या जब तक गड़बड़ी की रिपोर्ट कैप्चर नहीं हो जाती, तब तक कॉलर को ब्लॉक किया जाना चाहिए (asynchronous = false).
| पैरामीटर | |
|---|---|
asynchronous |
boolean |
setDescriptiveName
public void setDescriptiveName (String name)
बग रिपोर्ट रिकॉर्ड करते समय इस्तेमाल करने के लिए, जानकारी देने वाला नाम सेट करें. अगर null,
BugreportCollector, तो उस इवेंट का नाम क्रम से लगाने के डिफ़ॉल्ट तरीके पर वापस आ जाएगा जिसकी वजह से bugreport इकट्ठा किया गया था.
| पैरामीटर | |
|---|---|
name |
String |
setDeviceWaitTime
public void setDeviceWaitTime (int waitTime)
यह विकल्प, उस समय को सेकंड में सेट करता है जब डिवाइस के ऑनलाइन होने का इंतज़ार किया जाता है. इसके बाद, हम बग रिपोर्ट कैप्चर करने की कोशिश करते हैं. अगर यह वैल्यू नेगेटिव है, तो कोई जांच नहीं की जाएगी. इस जांच के दौरान मिले किसी भी DeviceNotAvailableException
को लॉग किया जाएगा और अनदेखा कर दिया जाएगा.
| पैरामीटर | |
|---|---|
waitTime |
int |
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, String trace)
इस फ़ंक्शन को तब कॉल किया जाता है, जब कोई ऐटॉमिक टेस्ट यह फ़्लैग करता है कि वह ऐसी शर्त मान रहा है जो गलत है
| पैरामीटर | |
|---|---|
test |
TestDescription: इससे टेस्ट की पहचान होती है |
trace |
String: गड़बड़ी का स्टैक ट्रेस |
testEnded
public void testEnded (TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
यह कुकी, किसी टेस्ट केस के खत्म होने की जानकारी देती है.
अगर testFailed(TestDescription, FailureDescription) को लागू नहीं किया गया है, तो यह टेस्ट पास हो गया है. यह टेस्ट केस के एक्ज़ीक्यूशन के दौरान, जनरेट हुई किसी भी कुंजी/वैल्यू मेट्रिक को भी दिखाता है.
| पैरामीटर | |
|---|---|
test |
TestDescription: इससे टेस्ट की पहचान होती है |
testMetrics |
HashMap: भेजी गई मेट्रिक का Map |
testFailed
public void testFailed (TestDescription test, String trace)
यह किसी टेस्ट केस के फ़ेल होने की जानकारी देता है.
इसे testStarted और testEnded के बीच कॉल किया जाएगा.
| पैरामीटर | |
|---|---|
test |
TestDescription: इससे टेस्ट की पहचान होती है |
trace |
String: गड़बड़ी का स्टैक ट्रेस |
testIgnored
public void testIgnored (TestDescription test)
इस फ़ंक्शन को तब कॉल किया जाता है, जब कोई टेस्ट नहीं चलाया जाता. आम तौर पर, ऐसा इसलिए होता है, क्योंकि टेस्ट के तरीके को org.junit.Ignore के साथ एनोटेट किया जाता है.
| पैरामीटर | |
|---|---|
test |
TestDescription: इससे टेस्ट की पहचान होती है |
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 तरीके के पूरा होने तक मौजूद रहे और उसे ऐक्सेस किया जा सके. |
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 (String errorMessage)
गंभीर गड़बड़ी की वजह से, रिपोर्ट के टेस्ट रन को पूरा नहीं किया जा सका.
| पैरामीटर | |
|---|---|
errorMessage |
String: String, रन फ़ेल होने की वजह के बारे में बताता है. |
testRunStarted
public void testRunStarted (String runName,
int testCount)यह कुकी, टेस्ट रन शुरू होने की जानकारी देती है.
| पैरामीटर | |
|---|---|
runName |
String: टेस्ट रन का नाम |
testCount |
int: टेस्ट रन में कुल टेस्ट की संख्या |
testRunStopped
public void testRunStopped (long elapsedTime)
उपयोगकर्ता के अनुरोध की वजह से, रिपोर्ट के टेस्ट रन को पूरा होने से पहले ही रोक दिया गया.
TODO: currently unused, consider removing
| पैरामीटर | |
|---|---|
elapsedTime |
long: डिवाइस ने मिलीसेकंड में बीता हुआ समय रिपोर्ट किया |
testStarted
public void testStarted (TestDescription test)
यह फ़ंक्शन, किसी टेस्ट केस के शुरू होने की जानकारी देता है. पुराना इंटरफ़ेस. जब भी हो सके, testStarted(TestDescription) का इस्तेमाल करना चाहिए.
| पैरामीटर | |
|---|---|
test |
TestDescription: इससे टेस्ट की पहचान होती है |