ShardListener

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

شیء جاوا
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)

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

روش‌های عمومی

دریافت‌کننده‌ی نتیجه‌ی زیربنایی

public List<ITestInvocationListener> getUnderlyingResultReporter ()

بازگشت‌ها
List< ITestInvocationListener >

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

public void invocationEnded (long elapsedTime)

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

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

پارامترها
elapsedTime long : زمان سپری شده از فراخوانی بر حسب میلی‌ثانیه

فراخوانی ناموفق

public void invocationFailed (FailureDescription failure)

به دلیل وجود برخی شرایط خطا، فراخوانی ناقص را گزارش می‌دهد.

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

پارامترها
failure FailureDescription : FailureDescription علت خرابی را توصیف می‌کند.

فراخوانی ناموفق

public void invocationFailed (Throwable cause)

به دلیل وجود برخی شرایط خطا، فراخوانی ناقص را گزارش می‌دهد.

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

پارامترها
cause Throwable : علت Throwable خرابی

فراخوانی رد شد

public void invocationSkipped (SkipReason reason)

یک فراخوانی را به عنوان رد شده گزارش می‌دهد

پارامترها
reason SkipReason

فراخوان شروع شد

public void invocationStarted (IInvocationContext context)

شروع فراخوانی تست را گزارش می‌دهد.

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

پارامترها
context IInvocationContext : اطلاعاتی درباره فراخوانی

انجمن ورود به سیستم

public void logAssociation (String dataName, 
                LogFile logFile)

در برخی موارد، log باید به شدت با یک مورد آزمایشی مرتبط باشد، اما امکان انجام این کار در فراخوانی مستقیم testLogSaved(String,LogDataType,InputStreamSource,LogFile) امکان‌پذیر نیست. بنابراین، این فراخوانی امکان ارائه یک ارتباط قوی را به طور صریح فراهم می‌کند.

پارامترها
dataName String : نام داده

logFile LogFile : LogFile که قبلاً لاگ شده و باید با مورد آزمایشی مرتبط باشد.

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

پارامترها
enableGranularResults boolean

پشتیبانی از نتایج گرانولار

public boolean supportGranularResults ()

اگر گزارشگر از نتایج جزئی پشتیبانی کند، مقدار True و در غیر این صورت مقدار False را برمی‌گرداند.

بازگشت‌ها
boolean

تست لاگ

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 موجود و در دسترس باقی می‌ماند.

testLogذخیره شده

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

پارامترها
dataName String

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

testModuleEnd

public void testModuleEnded ()

پایان اجرای یک ماژول را گزارش می‌دهد.

ماژول تست شروع شد

public void testModuleStarted (IInvocationContext moduleContext)

شروع اجرای یک ماژول را گزارش می‌دهد. این فراخوانی با testModuleEnded() مرتبط است و در دنباله اختیاری است. فقط در طول اجرایی که از اجراکننده‌های مبتنی بر modules: suite استفاده می‌کند، استفاده می‌شود.

پارامترها
moduleContext IInvocationContext : همان IInvocationContext مربوط به ماژول است.

تست اجرا شده

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

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

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

runMetrics HashMap : جفت‌های کلید-مقدار که در پایان اجرای تست با Metric گزارش می‌شوند.

تست اجرا ناموفق

public void testRunFailed (FailureDescription failure)

گزارش می‌دهد که اجرای آزمایشی به دلیل خرابی شرح داده شده توسط FailureDescription ، با شکست مواجه شده است.

پارامترها
failure FailureDescription : FailureDescription خرابی و زمینه آن را توصیف می‌کند.

تست اجرا ناموفق

public void testRunFailed (String failureMessage)

گزارش‌ها حاکی از آن است که اجرای آزمایشی به دلیل یک خطای مهلک با شکست مواجه شده است.

پارامترها
failureMessage String : String دلیل عدم موفقیت در اجرا را توصیف می‌کند.

تست شروع شد

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

شروع یک آزمایش را گزارش می‌دهد.

پارامترها
name String : نام اجرای آزمایشی

numTests int : تعداد کل تست‌ها در اجرای تست

attemptNumber int : شماره ترتیب، که تلاش‌های مختلف یک runName را که چندین بار اجرا شده‌اند، مشخص می‌کند. شماره تلاش با اندیس ۰ اندیس‌گذاری شده است و باید هر بار که یک اجرای جدید اتفاق می‌افتد، افزایش یابد. به عنوان مثال، یک تست ۳ بار به صورت جزئی تکرار می‌شود، باید ۴ بار در کل تحت یک runName اجرا شود و شماره تلاش از ۰ تا ۳ است.

startTime long : زمان شروع اجرا، که از طریق System.currentTimeMillis() اندازه‌گیری می‌شود.