ProtoResultReporter

public abstract class ProtoResultReporter
extends Object implements ILogSaverListener, ISupportGranularResults, ITestInvocationListener

java.lang.Object
   ↳ com.android.tradefed.result.proto.ProtoResultReporter


ผู้รายงานผลจะสร้าง TestRecord protobuf ที่มีผลการค้นหาทั้งหมดอยู่ภายใน ควรมีการขยายเพื่อจัดการสิ่งที่ต้องทำกับโปรโตคอลสุดท้ายใน processFinalProto(com.android.tradefed.result.proto.TestRecordProto.TestRecord)

สรุป

ตัวสร้างแบบสาธารณะ

ProtoResultReporter()

เมธอดสาธารณะ

final void invocationEnded(long elapsedTime)

รายงานว่าการเรียกใช้สิ้นสุดลงแล้ว ไม่ว่าจะสำเร็จหรือไม่สำเร็จเนื่องจากเงื่อนไขข้อผิดพลาดบางอย่าง

void invocationFailed(FailureDescription failure)

รายงานการเรียกใช้ที่ไม่สมบูรณ์เนื่องจากสภาพขณะเกิดข้อผิดพลาดบางอย่าง

void invocationFailed(Throwable cause)

รายงานการเรียกใช้ที่ไม่สมบูรณ์เนื่องจากสภาพขณะเกิดข้อผิดพลาดบางอย่าง

void invocationSkipped(SkipReason reason)

รายงานการเรียกใช้ว่าข้าม

final void invocationStarted(IInvocationContext context)

รายงานการเริ่มต้นการเรียกใช้การทดสอบ

final void logAssociation(String dataName, LogFile logFile)

ในบางกรณี บันทึกต้องเชื่อมโยงกับกรณีทดสอบอย่างแน่นหนา แต่โอกาสที่จะทําเช่นนั้นใน testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) callbacks โดยตรงนั้นไม่สามารถทำได้

void processFinalInvocationLogs(TestRecordProto.TestRecord invocationLogs)

ใช้ระเบียนการเรียกใช้เพื่อส่งบันทึกสุดท้ายของการเรียกใช้ทั้งหมดทีละรายการ

void processFinalProto(TestRecordProto.TestRecord finalRecord)

การจัดการโปรโตสุดท้ายที่มีผลลัพธ์ทั้งหมด

void processStartInvocation(TestRecordProto.TestRecord invocationStartRecord, IInvocationContext invocationContext)

การจัดการโปรโตคอลระเบียนการทดสอบการเรียกใช้บางส่วนหลังจากเกิด invocationStarted(com.android.tradefed.invoker.IInvocationContext)

void processTestCaseEnded(TestRecordProto.TestRecord testCaseRecord)

การจัดการโปรโตคอลระเบียนกรอบการทดสอบที่เสร็จสมบูรณ์แล้วหลังจากเกิด ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,HashMap))

void processTestCaseStarted(TestRecordProto.TestRecord testCaseStartedRecord)

การจัดการโปรโตคอลระเบียนกรอบการทดสอบบางส่วนหลังจาก testStarted(com.android.tradefed.result.TestDescription, long) เกิดขึ้น

void processTestModuleEnd(TestRecordProto.TestRecord moduleRecord)

การจัดการโปรโตคอลระเบียนโมดูลที่เสร็จสมบูรณ์แล้วหลังจากเกิด testModuleEnded()

void processTestModuleStarted(TestRecordProto.TestRecord moduleStartRecord)

การจัดการ Proto ของระเบียนโมดูลบางส่วนหลังจาก testModuleStarted(com.android.tradefed.invoker.IInvocationContext) เกิดขึ้น

void processTestRunEnded(TestRecordProto.TestRecord runRecord, boolean moduleInProgress)

การจัดการ Proto ของบันทึกการเรียกใช้ที่เสร็จสิ้นแล้วหลังจาก ERROR(/#testRunEnded(long,HashMap)) เกิดขึ้น

void processTestRunStarted(TestRecordProto.TestRecord runStartedRecord)

การจัดการ Proto ของบันทึกการเรียกใช้การทดสอบบางส่วนหลังจากเกิด testRunStarted(String, int)

void setGranularResults(boolean granularResults)
void setInlineRecordOfChildren(boolean inline)
boolean supportGranularResults()

แสดงค่า True หากเครื่องมือรายงานรองรับผลลัพธ์แบบละเอียด หากไม่ แสดงค่า False

final void testAssumptionFailure(TestDescription test, String trace)

เรียกใช้เมื่อตัวบ่งชี้การทดสอบแบบอะตอมระบุว่ามีเงื่อนไขที่เป็นเท็จ

final void testAssumptionFailure(TestDescription test, FailureDescription failure)

เรียกใช้เมื่อการทดสอบแบบอะตอมแจ้งว่าถือว่าเงื่อนไขเป็นเท็จ

final void testEnded(TestDescription test, long endTime, testMetrics)

ทางเลือกสำหรับ ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) ซึ่งเราสามารถระบุเวลาสิ้นสุดได้โดยตรง

void testEnded(TestDescription test, testMetrics)

รายงานการสิ้นสุดการดําเนินการของ Test Case แต่ละรายการ

final void testFailed(TestDescription test, FailureDescription failure)

รายงานการทดสอบแต่ละรายการที่ล้มเหลว

final void testFailed(TestDescription test, String trace)

รายงานการทดสอบแต่ละรายการที่ล้มเหลว

final void testIgnored(TestDescription test)

เรียกใช้เมื่อระบบจะไม่เรียกใช้การทดสอบ ซึ่งโดยทั่วไปแล้วเป็นเพราะเมธอดทดสอบมีคำอธิบายประกอบด้วย annotate ของ org.junit.Ignore

final void testModuleEnded()

รายงานการสิ้นสุดการเรียกใช้ข้อบังคับ

final void testModuleStarted(IInvocationContext moduleContext)

รายงานช่วงเริ่มต้นของโมดูลที่ทำงานอยู่

final void testRunEnded(long elapsedTimeMillis, runMetrics)

สิ้นสุดการทดสอบรายงาน

final void testRunFailed(FailureDescription failure)

การทดสอบรายงานไม่เสร็จสมบูรณ์เนื่องจากความล้มเหลวที่อธิบายโดย FailureDescription

final void testRunFailed(String errorMessage)

การเรียกใช้การทดสอบรายงานไม่สำเร็จเนื่องจากข้อผิดพลาดร้ายแรง

void testRunStarted(String runName, int testCount, int attemptNumber)

รายงานการเริ่มต้นการทดสอบ

final void testRunStarted(String runName, int testCount)

รายงานการเริ่มต้นการทดสอบ

void testRunStarted(String runName, int testCount, int attemptNumber, long startTime)

รายงานการเริ่มต้นการทดสอบ

final void testSkipped(TestDescription test, SkipReason reason)

เรียกใช้เมื่อมีการข้ามการทดสอบและไม่ทํางานด้วยเหตุผลที่ปกติแล้วไม่คาดคิด

final void testStarted(TestDescription test, long startTime)

ทางเลือกสำหรับ testStarted(com.android.tradefed.result.TestDescription) ซึ่งเราจะระบุเวลาที่เริ่มการทดสอบด้วย ร่วมกับ ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) เพื่อการวัดผลที่แม่นยำ

final void testStarted(TestDescription test)

รายงานจุดเริ่มต้นของกรอบการทดสอบแต่ละรายการ

วิธีการที่มีการป้องกัน

void afterModuleEnd()
void beforeModuleStart()
TestRecordProto.ChildReference createModuleChildReference(TestRecordProto.TestRecord record)

สร้างข้อมูลอ้างอิงย่อยสําหรับข้อบังคับ

ตัวสร้างแบบสาธารณะ

ProtoResultReporter

public ProtoResultReporter ()

วิธีการสาธารณะ

invocationEnded

public final 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 ของความล้มเหลว

ข้ามการเรียกใช้

public void invocationSkipped (SkipReason reason)

รายงานการเรียกใช้ว่าข้าม

พารามิเตอร์
reason SkipReason

invocationStarted

public final void invocationStarted (IInvocationContext context)

รายงานจุดเริ่มต้นของการเรียกใช้การทดสอบ

เฟรมเวิร์ก TradeFederation จะเรียกใช้โดยอัตโนมัติ ผู้รายงานต้องลบล้างวิธีนี้เพื่อรองรับการรายงานอุปกรณ์หลายเครื่อง

พารามิเตอร์
context IInvocationContext: ข้อมูลเกี่ยวกับคำขอ

logAssociation

public final void logAssociation (String dataName, 
                LogFile logFile)

ในบางกรณี บันทึกต้องเชื่อมโยงกับกรณีทดสอบอย่างแน่นหนา แต่โอกาสที่จะทําเช่นนั้นใน testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) callbacks โดยตรงนั้นไม่สามารถทำได้ ดังนั้น แคล็กแบ็กนี้จึงช่วยให้มีการเชื่อมโยงที่ชัดเจน

พารามิเตอร์
dataName String: ชื่อของข้อมูล

logFile LogFile: LogFile ที่บันทึกไว้ก่อนหน้านี้และควรเชื่อมโยงกับกรอบการทดสอบ

กระบวนการFinalInvocationLogs

public void processFinalInvocationLogs (TestRecordProto.TestRecord invocationLogs)

ใช้ระเบียนการเรียกใช้เพื่อส่งบันทึกสุดท้ายทั้งหมดของการเรียกใช้ทีละรายการ

พารามิเตอร์
invocationLogs TestRecordProto.TestRecord: Proto ที่เสร็จสมบูรณ์ซึ่งแสดงการเรียกใช้

processFinalProto

public void processFinalProto (TestRecordProto.TestRecord finalRecord)

การจัดการโปรโตสุดท้ายที่มีผลลัพธ์ทั้งหมด

พารามิเตอร์
finalRecord TestRecordProto.TestRecord: โปรโตคอลที่เสร็จสมบูรณ์พร้อมผลการเรียกใช้ทั้งหมด

processStartInvocation

public void processStartInvocation (TestRecordProto.TestRecord invocationStartRecord, 
                IInvocationContext invocationContext)

การจัดการโปรโตคอลระเบียนการทดสอบการเรียกใช้บางส่วนหลังจากเกิด invocationStarted(com.android.tradefed.invoker.IInvocationContext)

พารามิเตอร์
invocationStartRecord TestRecordProto.TestRecord: โปรโตคอลบางส่วนที่สร้างขึ้นหลังจาก invocationStart

invocationContext IInvocationContext: การเรียกใช้ IInvocationContext

processTestCaseEnded

public void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

การจัดการโปรโตคอลระเบียนกรอบการทดสอบที่เสร็จสมบูรณ์แล้วหลังจากเกิด ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,HashMap))

พารามิเตอร์
testCaseRecord TestRecordProto.TestRecord: โปรโตคอลที่เสร็จสมบูรณ์ซึ่งแสดงถึงกรอบการทดสอบ

processTestCaseStarted

public void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

การจัดการโปรโตคอลระเบียนกรอบการทดสอบบางส่วนหลังจาก testStarted(com.android.tradefed.result.TestDescription, long) เกิดขึ้น

พารามิเตอร์
testCaseStartedRecord TestRecordProto.TestRecord: โปรโตคอลบางส่วนที่แสดงถึงกรอบการทดสอบ

processTestModuleEnd

public void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

การจัดการโปรโตคอลระเบียนโมดูลที่เสร็จสมบูรณ์แล้วหลังจากเกิด testModuleEnded()

พารามิเตอร์
moduleRecord TestRecordProto.TestRecord: โปรโตคอลที่เสร็จสมบูรณ์ซึ่งแสดงถึงโมดูล

processTestModuleStarted

public void processTestModuleStarted (TestRecordProto.TestRecord moduleStartRecord)

การจัดการโปรโตคอลระเบียนโมดูลบางส่วนหลังจากเกิด testModuleStarted(com.android.tradefed.invoker.IInvocationContext)

พารามิเตอร์
moduleStartRecord TestRecordProto.TestRecord: โปรโตคอลบางส่วนที่แสดงถึงโมดูล

processTestRunEnded

public void processTestRunEnded (TestRecordProto.TestRecord runRecord, 
                boolean moduleInProgress)

การจัดการโปรโตคอลระเบียนการเรียกใช้ที่เสร็จสมบูรณ์แล้วหลังจาก ERROR(/#testRunEnded(long,HashMap))

พารามิเตอร์
runRecord TestRecordProto.TestRecord: Proto ที่เสร็จสมบูรณ์ซึ่งแสดงการเรียกใช้

moduleInProgress boolean: ระบุว่าโมดูลอยู่ระหว่างดำเนินการหรือไม่

processTestRunStarted

public void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

การจัดการโปรโตคอลระเบียนการทดสอบการเรียกใช้บางส่วนหลังจาก testRunStarted(String, int) เกิดขึ้น

พารามิเตอร์
runStartedRecord TestRecordProto.TestRecord: Proto บางส่วนที่แสดงการเรียกใช้

setGranularResults

public void setGranularResults (boolean granularResults)

พารามิเตอร์
granularResults boolean

setInlineRecordOfChildren

public void setInlineRecordOfChildren (boolean inline)

พารามิเตอร์
inline boolean

supportGranularResults

public boolean supportGranularResults ()

แสดงค่า True หากเครื่องมือรายงานรองรับผลลัพธ์แบบละเอียด หากไม่ แสดงค่า False

คิกรีเทิร์น
boolean

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                String trace)

เรียกใช้เมื่อการทดสอบแบบอะตอมแจ้งว่าถือว่าเงื่อนไขเป็นเท็จ

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

trace String: สแต็กเทรซของข้อผิดพลาด

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

เรียกใช้เมื่อการทดสอบแบบอะตอมแจ้งว่าถือว่าเงื่อนไขเป็นเท็จ

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

failure FailureDescription: FailureDescription อธิบายความล้มเหลวและบริบท

สิ้นสุดการทดสอบ

public final void testEnded (TestDescription test, 
                long endTime, 
                 testMetrics)

ทางเลือกสำหรับ ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) ซึ่งเราสามารถระบุเวลาสิ้นสุดได้โดยตรง ใช้ร่วมกับ testStarted(com.android.tradefed.result.TestDescription, long) เพื่อให้การวัดผลแม่นยำ

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

endTime long: เวลาสิ้นสุดการทดสอบซึ่งวัดผ่าน System.currentTimeMillis()

testMetrics : เมตริก ERROR(/Map) รายการที่ระบบปล่อยออกมา

สิ้นสุดการทดสอบ

public void testEnded (TestDescription test, 
                 testMetrics)

รายงานการสิ้นสุดการดำเนินการของกรอบการทดสอบแต่ละรายการ

หากไม่มีการเรียกใช้ testFailed(TestDescription, FailureDescription) แสดงว่าทดสอบนี้ผ่าน และยังแสดงเมตริกคีย์/ค่าที่อาจแสดงระหว่างการเรียกใช้ชุดทดสอบด้วย

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

testMetrics : ERROR(/Map) ของเมตริกที่ส่งออก

testFailed

public final void testFailed (TestDescription test, 
                FailureDescription failure)

รายงานความล้มเหลวของกรอบการทดสอบแต่ละรายการ

ระบบจะเรียกใช้ระหว่าง testStarted และ testEnded

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

failure FailureDescription: FailureDescription อธิบายความล้มเหลวและบริบท

testFailed

public final void testFailed (TestDescription test, 
                String trace)

รายงานความล้มเหลวของกรอบการทดสอบแต่ละรายการ

ระบบจะเรียกใช้ระหว่าง testStarted และ testEnded

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

trace String: สแต็กเทรซของข้อผิดพลาด

testIgnored

public final void testIgnored (TestDescription test)

เรียกใช้เมื่อระบบจะไม่เรียกใช้การทดสอบ ซึ่งโดยทั่วไปแล้วเป็นเพราะเมธอดทดสอบมีคำอธิบายประกอบด้วย annotate ของ org.junit.Ignore

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

โมดูลทดสอบสิ้นสุดแล้ว

public final void testModuleEnded ()

รายงานการสิ้นสุดการเรียกใช้ข้อบังคับ

testModuleStarted

public final void testModuleStarted (IInvocationContext moduleContext)

รายงานการเริ่มต้นการทํางานของโมดูล การเรียกกลับนี้เชื่อมโยงกับ testModuleEnded() และสามารถเลือกใช้ในลำดับหรือไม่ก็ได้ จะใช้ในระหว่างการเรียกใช้ที่ใช้ข้อบังคับเท่านั้น ซึ่งก็คือเครื่องมือรันไทม์ที่อิงตามชุด

พารามิเตอร์
moduleContext IInvocationContext: IInvocationContext ของโมดูล

สิ้นสุดการทดสอบแล้ว

public final void testRunEnded (long elapsedTimeMillis, 
                 runMetrics)

รายงานการสิ้นสุดการทดสอบ

พารามิเตอร์
elapsedTimeMillis long: เวลาที่ผ่านไปที่อุปกรณ์รายงานเป็นมิลลิวินาที

runMetrics : คู่คีย์-ค่าที่รายงานเมื่อสิ้นสุดการทดสอบ

testRunFailed

public final void testRunFailed (FailureDescription failure)

การทดสอบรายงานไม่เสร็จสมบูรณ์เนื่องจากความล้มเหลวที่อธิบายโดย FailureDescription

พารามิเตอร์
failure FailureDescription: FailureDescription อธิบายความล้มเหลวและบริบท

testRunFailed

public final void testRunFailed (String errorMessage)

การเรียกใช้การทดสอบรายงานไม่สำเร็จเนื่องจากข้อผิดพลาดร้ายแรง

พารามิเตอร์
errorMessage String: String อธิบายสาเหตุของการเรียกใช้ที่ไม่สําเร็จ

เริ่มการทดสอบแล้ว

public void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber)

รายงานการเริ่มต้นการทดสอบ

พารามิเตอร์
runName String: ชื่อการทดสอบ

testCount int: จํานวนการทดสอบทั้งหมดในการทํางานทดสอบ

attemptNumber int: หมายเลขคำสั่งซื้อ ซึ่งระบุการพยายามต่างๆ ของ runName เดียวกันที่เรียกใช้หลายครั้ง การทบทวน Number เป็น 0 และควรเพิ่มขึ้นทุกครั้งที่มีการเรียกใช้ใหม่เกิดขึ้น เช่น การทดสอบมีการลองใหม่ 3 ครั้ง ควรมีการเรียกใช้ทั้งหมด 4 ครั้งภายใต้ runName เดียวกัน และ beginNumber จาก 0 ถึง 3

testRunStarted

public final void testRunStarted (String runName, 
                int testCount)

รายงานการเริ่มต้นการทดสอบ

พารามิเตอร์
runName String: ชื่อการทดสอบ

testCount int: จำนวนการทดสอบทั้งหมดในการทดสอบ

testRunStarted

public void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

รายงานการเริ่มต้นการทดสอบ

พารามิเตอร์
runName String: ชื่อการทดสอบ

testCount int: จํานวนการทดสอบทั้งหมดในการทํางานทดสอบ

attemptNumber int: หมายเลขคำสั่งซื้อ ระบุความพยายามที่แตกต่างกันของ runName เดียวกันที่เรียกใช้หลายครั้ง attemptNumber จะเริ่มต้นที่ 0 และควรเพิ่มขึ้นทุกครั้งที่มีการทำงานใหม่ เช่น การทดสอบได้รับการลองใหม่แบบละเอียด 3 ครั้ง ก็ควรมีการเรียกใช้ทั้งหมด 4 ครั้งภายใต้ runName เดียวกัน และ attemptNumber จะอยู่ระหว่าง 0 ถึง 3

startTime long: เวลาเริ่มต้นการเรียกใช้ ซึ่งวัดผ่าน System.currentTimeMillis()

testSkipped

public final void testSkipped (TestDescription test, 
                SkipReason reason)

เรียกใช้เมื่อมีการข้ามการทดสอบและไม่ทํางานด้วยเหตุผลที่ปกติแล้วไม่คาดคิด ระบบจะพยายามทดสอบเหล่านี้อีกครั้งเพื่อพยายามเรียกใช้อย่างถูกต้อง

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

reason SkipReason: SkipReason

testStarted

public final void testStarted (TestDescription test, 
                long startTime)

ทางเลือกสำหรับ testStarted(com.android.tradefed.result.TestDescription) ซึ่งเราจะระบุเวลาที่เริ่มการทดสอบด้วย ร่วมกับ ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) เพื่อการวัดผลที่แม่นยำ

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

startTime long: เวลาเริ่มต้นการทดสอบซึ่งวัดผ่าน System.currentTimeMillis()

testStarted

public final void testStarted (TestDescription test)

รายงานการเริ่มต้นของกรณีทดสอบแต่ละรายการ อินเทอร์เฟซเก่า ควรใช้ testStarted(com.android.tradefed.result.TestDescription) เมื่อเป็นไปได้

พารามิเตอร์
test TestDescription: ระบุการทดสอบ

วิธีการที่มีการป้องกัน

หลังจากโมดูลสิ้นสุด

protected void afterModuleEnd ()

beforeModuleStart

protected void beforeModuleStart ()

createModuleChildReference

protected TestRecordProto.ChildReference createModuleChildReference (TestRecordProto.TestRecord record)

สร้างข้อมูลอ้างอิงย่อยสําหรับข้อบังคับ

พารามิเตอร์
record TestRecordProto.TestRecord

คิกรีเทิร์น
TestRecordProto.ChildReference