BugreportCollector

public class BugreportCollector
extends Object implements ITestInvocationListener

java.lang.object
com.android.tradefed.result.BugreportCollector


یک ITestInvocationListener که در صورت وقوع رویدادهای قابل تنظیم، گزارش‌های اشکال را جمع‌آوری می‌کند و پس از جمع‌آوری هر گزارش اشکال ITestInvocationListener#testLog روی فرزندان خود فراخوانی می‌کند.

رفتارها: (FIXME: این را تمام کنید)

  • در صورت شکست هر یک از موارد آزمایشی، پس از هر کدام، عکس بگیرید
  • بعد از هر آزمایش عکس بگیرید
  • بعد از هر تست شکست خورده عکس بگیرید
  • گرفتن

خلاصه

کلاس های تو در تو

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)

تنظیم کنید که آیا مجموعه گزارش اشکال باید گزارش اشکال را در رشته دیگری جمع آوری کند ( asynchronous = true )، یا تماس گیرنده را تا زمانی که گزارش اشکال ضبط شود مسدود کند ( asynchronous = false ).

void setDescriptiveName (String name)

نام توصیفی را برای استفاده در هنگام ضبط گزارش‌های اشکال تنظیم کنید.

void setDeviceWaitTime (int waitTime)

زمان را (بر حسب ثانیه) تنظیم کنید تا منتظر بمانیم تا دستگاه آنلاین شود قبل از اینکه بخواهیم گزارش اشکال را بگیریم.

void testAssumptionFailure ( TestDescription test, String trace)

زمانی که یک آزمایش اتمی نشان می دهد که شرطی نادرست را فرض می کند، نامیده می شود

void testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, 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, runMetrics) testRunEnded (long elapsedTime, 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

روش های عمومی

add Predicate

public void addPredicate (BugreportCollector.Predicate p)

پارامترها
p BugreportCollector.Predicate

blockUntilIdle

public void blockUntilIdle ()

مسدود کنید تا زمانی که گردآورنده هیچ گونه گزارش اشکالی را جمع آوری نکند. اگر گردآورنده به طور فعال گزارش اشکال را جمع آوری نمی کند، فوراً برگردید

دریافت خلاصه

public TestSummary getSummary ()

به InvocationListener اجازه می دهد خلاصه ای را برگرداند.

برمی گرداند
TestSummary یک TestSummary که اجرا یا null را خلاصه می کند

فراخوان پایان یافت

public void invocationEnded (long elapsedTime)

گزارش می دهد که فراخوانی خاتمه یافته است، چه با موفقیت یا به دلیل برخی شرایط خطا.

به طور خودکار توسط چارچوب TradeFederation فراخوانی می شود.

پارامترها
elapsedTime long : زمان سپری شده فراخوانی در ms

فراخوان ناموفق بود

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 به رفتار پیش‌فرض مربوط به سریال‌سازی نام رویدادی که باعث جمع‌آوری گزارش اشکال شده است، بازمی‌گردد.

پارامترها
name String

setDeviceWaitTime

public void setDeviceWaitTime (int waitTime)

زمان را (بر حسب ثانیه) تنظیم کنید تا منتظر بمانیم تا دستگاه آنلاین شود قبل از اینکه بخواهیم گزارش اشکال را بگیریم. در صورت منفی بودن بررسی انجام نمی شود. هر DeviceNotAvailableException که در طول این بررسی با آن مواجه شود، ثبت می شود و نادیده گرفته می شود.

پارامترها
waitTime int

آزمون فرض شکست

public void testAssumptionFailure (TestDescription test, 
                String trace)

زمانی که یک آزمایش اتمی نشان می دهد که شرطی نادرست را فرض می کند، نامیده می شود

پارامترها
test TestDescription : تست را مشخص می کند

trace String : ردپای شکست

تست پایان یافت

public void testEnded (TestDescription test, 
                 testMetrics)

پایان اجرای یک مورد آزمایشی فردی را گزارش می کند.

اگر testFailed(TestDescription, FailureDescription) فراخوانی نمی شد، این آزمایش با موفقیت انجام شد. همچنین هر معیار کلید/مقداری را که ممکن است در طول اجرای مورد آزمایشی منتشر شده باشد، برمی گرداند.

پارامترها
test TestDescription : تست را مشخص می کند

testMetrics : یک ERROR(/Map) از معیارهای منتشر شده

تست شکست خورد

public void testFailed (TestDescription test, 
                String trace)

گزارش شکست یک مورد آزمایشی فردی.

بین testStarted و testEnded فراخوانی خواهد شد.

پارامترها
test TestDescription : تست را مشخص می کند

trace String : ردپای شکست

تست نادیده گرفته شد

public void testIgnored (TestDescription test)

زمانی که آزمایشی اجرا نمی‌شود نامیده می‌شود، معمولاً به این دلیل که یک روش تست با org.junit.Ignore حاشیه‌نویسی می‌شود.

پارامترها
test TestDescription : تست را مشخص می کند

testLog

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

گزارش مربوطه یا داده های اشکال زدایی را از فراخوانی آزمایشی ارائه می دهد.

باید قبل از ERROR(/ITestInvocationListener#invocationFailed(Throwable)) یا ERROR(/ITestInvocationListener#invocationEnded(long)) فراخوانی شود

چارچوب TradeFederation به طور خودکار این روش را فراخوانی می‌کند و گزارش میزبان و در صورت وجود، logcat دستگاه را ارائه می‌کند.

پارامترها
dataName String : نام توصیفی String از داده ها. به عنوان مثال "device_logcat". توجه داشته باشید dataName ممکن است در هر فراخوان منحصر به فرد نباشد. به عنوان مثال، پیاده‌کننده‌ها باید بتوانند چندین تماس را با یک dataName مدیریت کنند

dataType LogDataType : LogDataType داده ها

dataStream InputStreamSource : InputStreamSource داده ها. پیاده‌کننده‌ها باید createInputStream را برای شروع خواندن داده‌ها فراخوانی کنند و از بسته شدن InputStream حاصل پس از تکمیل اطمینان حاصل کنند. تماس‌گیرندگان باید اطمینان حاصل کنند که منبع داده‌ها تا زمانی که روش testLog کامل نشود، موجود و قابل دسترسی است.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

گزارش پایان اجرای آزمایشی FIXME: ما نمی توانیم دو رابط Map<> با نوع متفاوت داشته باشیم، بنابراین باید از HashMap در اینجا استفاده کنیم.

پارامترها
elapsedTime long : دستگاه زمان سپری شده را بر حسب میلی ثانیه گزارش کرد

runMetrics : جفت های کلید-مقدار در پایان اجرای آزمایشی با 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: در حال حاضر استفاده نشده است، حذف را در نظر بگیرید

پارامترها
elapsedTime long : دستگاه زمان سپری شده را بر حسب میلی ثانیه گزارش کرد

تست شروع شد

public void testStarted (TestDescription test)

شروع یک مورد آزمایشی فردی را گزارش می دهد. رابط قدیمی‌تر، باید در صورت امکان testStarted(com.android.tradefed.result.TestDescription) استفاده کند.

پارامترها
test TestDescription : تست را مشخص می کند