ProtoResultReporter

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

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)

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

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) ไม่สามารถโทรกลับได้

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)

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

void processTestRunEnded (TestRecordProto.TestRecord runRecord, boolean moduleInProgress)

การจัดการโปรโตเรคคอร์ดการรันที่สรุปผลหลังจาก ERROR(/#testRunEnded(long,HashMap)) เกิดขึ้น

void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

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

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

คืนค่า True หากผู้รายงานสนับสนุนผลลัพธ์แบบละเอียด มิฉะนั้นจะเป็นเท็จ

final void testAssumptionFailure ( TestDescription test, String trace)

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

final void testAssumptionFailure ( TestDescription test, FailureDescription failure)

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

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

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

void testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, testMetrics)

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

final void testFailed ( TestDescription test, FailureDescription failure)

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

final void testFailed ( TestDescription test, String trace)

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

final void testIgnored ( TestDescription test)

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

final void testModuleEnded ()

รายงานการสิ้นสุดการรันโมดูล

final void testModuleStarted ( IInvocationContext moduleContext)

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

final void testRunEnded (long elapsedTimeMillis, runMetrics) 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 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)

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

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

TestRecordProto.ChildReference createModuleChildReference (TestRecordProto.TestRecord record)

สร้างการอ้างอิงลูกสำหรับโมดูล

ผู้สร้างสาธารณะ

ProtoResultReporter

public ProtoResultReporter ()

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

การร้องขอสิ้นสุด

public final void invocationEnded (long elapsedTime)

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

จะถูกเรียกโดยอัตโนมัติโดยกรอบงานของ TradeFederation

พารามิเตอร์
elapsedTime long : เวลาที่ผ่านไปของการร้องขอใน ms

invocationFailed

public void invocationFailed (FailureDescription failure)

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

จะถูกเรียกโดยอัตโนมัติโดยกรอบงานของ TradeFederation

พารามิเตอร์
failure FailureDescription : FailureDescription อธิบายสาเหตุของความล้มเหลว

invocationFailed

public void invocationFailed (Throwable cause)

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

จะถูกเรียกโดยอัตโนมัติโดยกรอบงานของ TradeFederation

พารามิเตอร์
cause Throwable ได้ : สาเหตุของความล้มเหลวที่ Throwable ได้

invocationStarted

public final void invocationStarted (IInvocationContext context)

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

จะถูกเรียกโดยอัตโนมัติโดยกรอบงานของ TradeFederation ผู้รายงานจำเป็นต้องแทนที่วิธีนี้เพื่อรองรับการรายงานอุปกรณ์หลายเครื่อง

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

บันทึกสมาคม

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) ไม่สามารถโทรกลับได้ ดังนั้น การเรียกกลับนี้ช่วยให้สามารถให้การเชื่อมโยงที่แข็งแกร่งอย่างชัดเจน

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

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

processFinalInvocationLogs

public void processFinalInvocationLogs (TestRecordProto.TestRecord invocationLogs)

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

พารามิเตอร์
invocationLogs TestRecordProto.TestRecord : โปรโตสุดท้ายที่แสดงถึงการเรียกใช้

กระบวนการสุดท้ายProto

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

กระบวนการTestCaseEnded

public void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

การจัดการโปรโตเรกคอร์ดกรณีทดสอบที่สรุปผลหลังจาก ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,HashMap)) เกิดขึ้น

พารามิเตอร์
testCaseRecord TestRecordProto.TestRecord : โปรโตที่สรุปผลแล้วแสดงถึงกรณีทดสอบ

กระบวนการTestCaseStarted

public void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

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

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

กระบวนการทดสอบโมดูลสิ้นสุด

public void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

การจัดการโปรโตเร็กคอร์ดโมดูลที่สรุปผลหลังจาก testModuleEnded()

พารามิเตอร์
moduleRecord TestRecordProto.TestRecord : โปรโตสุดท้ายที่แสดงโมดูล

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

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 : โปรโตขั้นสุดท้ายที่แสดงถึงการรัน

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

processTestRunStarted

public void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

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

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

setGranularResults

public void setGranularResults (boolean granularResults)

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

setInlineRecordOfChildren

public void setInlineRecordOfChildren (boolean inline)

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

การสนับสนุนแบบละเอียดผลลัพธ์

public boolean supportGranularResults ()

คืนค่า True หากผู้รายงานสนับสนุนผลลัพธ์แบบละเอียด มิฉะนั้นจะเป็นเท็จ

คืนสินค้า
boolean

ทดสอบสมมติฐานความล้มเหลว

public final void testAssumptionFailure (TestDescription test, 
                String trace)

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

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

trace String : สแต็กเทรซของความล้มเหลว

ทดสอบสมมติฐานความล้มเหลว

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 : a ERROR(/Map) ของตัวชี้วัดที่ปล่อยออกมา

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

public void testEnded (TestDescription test, 
                 testMetrics)

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

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

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

testMetrics : a ERROR(/Map) ของตัวชี้วัดที่ปล่อยออกมา

การทดสอบล้มเหลว

public final void testFailed (TestDescription test, 
                FailureDescription failure)

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

จะถูกเรียกระหว่าง testStarted และ testEnded

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

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

การทดสอบล้มเหลว

public final void testFailed (TestDescription test, 
                String trace)

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

จะถูกเรียกระหว่าง testStarted และ testEnded

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

trace String : สแต็กเทรซของความล้มเหลว

ทดสอบละเว้น

public final void testIgnored (TestDescription test)

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

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

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

public final void testModuleEnded ()

รายงานการสิ้นสุดการรันโมดูล

ทดสอบโมดูลเริ่มแล้ว

public final void testModuleStarted (IInvocationContext moduleContext)

รายงานการเริ่มต้นของโมดูลที่ทำงานอยู่ การเรียกกลับนี้เชื่อมโยงกับ testModuleEnded() และเป็นทางเลือกในลำดับ ใช้เฉพาะในระหว่างการวิ่งที่ใช้โมดูล: ชุดวิ่งตาม

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

testRunEnded

public final void testRunEnded (long elapsedTimeMillis, 
                 runMetrics)

รายงานสิ้นสุดการทดสอบการทำงาน แก้ไข: เราไม่สามารถมีอินเทอร์เฟซ Map<> สองรายการที่มีประเภทต่างกัน ดังนั้นเราจึงต้องใช้ HashMap ที่นี่

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

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

testRunFailed

public final void testRunFailed (FailureDescription failure)

การเรียกใช้การทดสอบรายงานล้มเหลวเนื่องจากความล้มเหลวที่อธิบายโดย FailureDescription

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

testRunFailed

public final void testRunFailed (String errorMessage)

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

พารามิเตอร์
errorMessage String : String ที่อธิบายสาเหตุของความล้มเหลวในการรัน

testRunStarted

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

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

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

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

attemptNumber int : หมายเลขคำสั่งซื้อ ระบุความพยายามที่แตกต่างกันของ runName เดียวกันที่ทำงานหลายครั้ง TryNumber ถูกสร้างดัชนี 0 และควรเพิ่มขึ้นทุกครั้งที่มีการเรียกใช้ใหม่ เช่น การทดสอบเป็นการลองใหม่แบบละเอียด 3 ครั้ง ควรมีรันทั้งหมด 4 ครั้งภายใต้ชื่อ runName เดียวกัน และ tryNumber มีค่าตั้งแต่ 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 เดียวกันที่ทำงานหลายครั้ง TryNumber ถูกสร้างดัชนี 0 และควรเพิ่มขึ้นทุกครั้งที่มีการเรียกใช้ใหม่ เช่น การทดสอบเป็นการลองใหม่แบบละเอียด 3 ครั้ง ควรมีรันทั้งหมด 4 ครั้งภายใต้ชื่อ runName เดียวกัน และ tryNumber มีค่าตั้งแต่ 0 ถึง 3

startTime long : เวลาที่เริ่มการทำงาน วัดผ่าน System.currentTimeMillis()

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

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()

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

public final void testStarted (TestDescription test)

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

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

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

createModuleChildReference

protected TestRecordProto.ChildReference createModuleChildReference (TestRecordProto.TestRecord record)

สร้างการอ้างอิงลูกสำหรับโมดูล

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

คืนสินค้า
TestRecordProto.ChildReference