ShardListener

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

java.lang.Object
   ↳ com.android.tradefed.result.CollectingTestListener
     ↳ com.android.tradefed.invoker.ShardListener


ITestInvocationListener ที่รวบรวมผลลัพธ์จากชาร์ดการเรียกใช้ (หรือที่เรียกว่าการแยกการเรียกใช้เพื่อเรียกใช้ในหลายๆ ทรัพยากรแบบขนาน) และส่งต่อผลลัพธ์ไปยัง Listener อื่น

สรุป

เครื่องมือสร้างสาธารณะ

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)

ในบางกรณี บันทึกต้องเชื่อมโยงกับกรณีทดสอบอย่างใกล้ชิด แต่ไม่สามารถดำเนินการดังกล่าวใน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 เสร็จสมบูรณ์แล้วเท่านั้น

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

getUnderlyingResultReporter

public List<ITestInvocationListener> getUnderlyingResultReporter ()

การคืนสินค้า
List<ITestInvocationListener>

invocationEnded

public 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 ทำงานไม่สำเร็จ

invocationSkipped

public void invocationSkipped (SkipReason reason)

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

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

invocationStarted

public void invocationStarted (IInvocationContext context)

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

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

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

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

ในบางกรณี บันทึกต้องเชื่อมโยงกับกรณีทดสอบอย่างใกล้ชิด แต่ไม่สามารถดำเนินการดังกล่าวในtestLogSaved(String,LogDataType,InputStreamSource,LogFile) การเรียกกลับโดยตรงได้ ดังนั้น Callback นี้จึงช่วยให้เชื่อมโยงได้อย่างชัดเจน

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

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

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

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

supportGranularResults

public boolean supportGranularResults ()

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

การคืนสินค้า
boolean

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 จะเรียกใช้เมธอดนี้โดยอัตโนมัติ พร้อมระบุบันทึกของโฮสต์ และหากเกี่ยวข้อง ก็จะระบุ logcat ของอุปกรณ์ด้วย

พารามิเตอร์
dataName String: String ชื่อที่สื่อความหมายของข้อมูล เช่น "device_logcat" หมายเหตุ dataName อาจไม่ซ้ำกันต่อการเรียกใช้ 1 ครั้ง กล่าวคือ ผู้ใช้ต้องสามารถจัดการ การเรียกหลายครั้งที่มี dataName เดียวกันได้

dataType LogDataType: LogDataType ของข้อมูล

dataStream InputStreamSource: InputStreamSource ของข้อมูล ผู้ใช้ควรเรียกใช้ createInputStream เพื่อเริ่มอ่านข้อมูล และตรวจสอบว่าได้ปิด InputStream ที่ได้เมื่อดำเนินการเสร็จแล้ว ผู้โทรควรตรวจสอบว่าแหล่งที่มาของข้อมูลยังคง อยู่และเข้าถึงได้จนกว่าเมธอด testLog จะเสร็จสมบูรณ์

testLogSaved

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

พารามิเตอร์
dataName String

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

testModuleEnded

public void testModuleEnded ()

รายงานการสิ้นสุดการเรียกใช้โมดูล

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

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

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

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

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

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

testRunFailed

public void testRunFailed (String failureMessage)

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

พารามิเตอร์
failureMessage String: String อธิบายเหตุผลที่การเรียกใช้ล้มเหลว

testRunStarted

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

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

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

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

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

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