SubprocessResultsReporter

public class SubprocessResultsReporter
extends Object implements AutoCloseable, ILogSaverListener, ISupportGranularResults, ITestInvocationListener

java.lang.Object
   ↳ com.android.tradefed.result.SubprocessResultsReporter


Triển khai ITestInvocationListener để được chỉ định làm result_reporter và chuyển tiếp kết quả của các kiểm thử, lần chạy kiểm thử, lệnh gọi kiểm thử từ quy trình con.

Tóm tắt

Hàm khởi tạo công khai

SubprocessResultsReporter()

Phương thức công khai

void close()

TestSummary getSummary()

Cho phép InvocationListener trả về một bản tóm tắt.

void invocationEnded(long elapsedTime)

Báo cáo rằng lời gọi đã chấm dứt, cho dù thành công hay do một số điều kiện lỗi.

void invocationFailed(FailureDescription failure)

Báo cáo một lệnh gọi chưa hoàn chỉnh do một số điều kiện lỗi.

void invocationFailed(Throwable cause)

Báo cáo một lệnh gọi chưa hoàn chỉnh do một số điều kiện lỗi.

void invocationStarted(IInvocationContext context)

Báo cáo thời điểm bắt đầu lệnh gọi kiểm thử.

void logAssociation(String dataName, LogFile logFile)

Trong một số trường hợp, nhật ký phải được liên kết chặt chẽ với các trường hợp kiểm thử, nhưng không thể thực hiện việc này trên lệnh gọi lại testLogSaved(String,LogDataType,InputStreamSource,LogFile) trực tiếp.

void printEvent(String key, Object event)

Trợ giúp in khoá sự kiện rồi in đối tượng json.

void setOutputTestLog(boolean outputTestLog)

Đặt xem chúng ta có nên xuất nhật ký kiểm thử hay không.

boolean supportGranularResults()

Trả về True nếu trình báo cáo hỗ trợ kết quả chi tiết, trả về false trong trường hợp ngược lại.

void testAssumptionFailure(TestDescription testId, String trace)

Được gọi khi một kiểm thử nguyên tử gắn cờ rằng kiểm thử đó giả định một điều kiện sai

void testAssumptionFailure(TestDescription testId, FailureDescription failure)

Được gọi khi một kiểm thử nguyên tử gắn cờ rằng kiểm thử đó giả định một điều kiện sai

void testEnded(TestDescription testId, long endTime, HashMap<String, MetricMeasurement.Metric> metrics)

Phương án thay thế cho testEnded(TestDescription,Map), trong đó chúng ta có thể chỉ định trực tiếp thời gian kết thúc.

void testEnded(TestDescription testId, HashMap<String, MetricMeasurement.Metric> metrics)

Báo cáo thời điểm kết thúc quá trình thực thi của một trường hợp kiểm thử riêng lẻ.

void testFailed(TestDescription testId, FailureDescription failure)

Báo cáo lỗi của một trường hợp kiểm thử riêng lẻ.

void testFailed(TestDescription testId, String reason)

Báo cáo lỗi của một trường hợp kiểm thử riêng lẻ.

void testIgnored(TestDescription testId)

Được gọi khi một quy trình kiểm thử sẽ không chạy, thường là do một phương thức kiểm thử được chú thích bằng org.junit.Ignore.

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

Cung cấp nhật ký hoặc dữ liệu gỡ lỗi được liên kết từ lệnh gọi kiểm thử.

void testModuleEnded()

Báo cáo thời điểm kết thúc một lần chạy mô-đun.

void testModuleStarted(IInvocationContext moduleContext)

Báo cáo thời điểm bắt đầu chạy một mô-đun.

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

Báo cáo thời điểm kết thúc một lần chạy kiểm thử.

void testRunFailed(FailureDescription failure)

Không hoàn tất được quá trình chạy thử báo cáo do lỗi được mô tả bằng FailureDescription.

void testRunFailed(String reason)

Không thể hoàn tất quá trình chạy thử báo cáo do gặp lỗi nghiêm trọng.

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

Báo cáo thời điểm bắt đầu một lần chạy kiểm thử.

void testRunStarted(String runName, int testCount)

Báo cáo thời điểm bắt đầu một lần chạy kiểm thử.

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

Báo cáo thời điểm bắt đầu một lần chạy kiểm thử.

void testRunStopped(long arg0)

Chạy thử báo cáo bị dừng trước khi hoàn tất do người dùng yêu cầu.

void testSkipped(TestDescription testId, SkipReason reason)

Được gọi khi một bài kiểm thử bị bỏ qua và không thực thi vì một lý do thường không mong muốn.

void testStarted(TestDescription testId, long startTime)

Phương án thay thế cho testStarted(TestDescription), trong đó chúng ta cũng chỉ định thời điểm bắt đầu kiểm thử, kết hợp với testEnded(TestDescription,long,Map) để đo lường chính xác.

void testStarted(TestDescription testId)

Báo cáo thời điểm bắt đầu một trường hợp kiểm thử riêng lẻ.

Hàm khởi tạo công khai

SubprocessResultsReporter

public SubprocessResultsReporter ()

Phương thức công khai

đóng

public void close ()

getSummary

public TestSummary getSummary ()

Cho phép InvocationListener trả về một bản tóm tắt.

Giá trị trả về
TestSummary Một TestSummary tóm tắt lượt chạy hoặc có giá trị rỗng

invocationEnded

public void invocationEnded (long elapsedTime)

Báo cáo rằng lời gọi đã chấm dứt, cho dù thành công hay do một số điều kiện lỗi.

Sẽ được khung TradeFederation tự động gọi.

Tham số
elapsedTime long: thời gian đã trôi qua của lệnh gọi (tính bằng mili giây)

invocationFailed

public void invocationFailed (FailureDescription failure)

Báo cáo một lệnh gọi chưa hoàn chỉnh do một số điều kiện lỗi.

Sẽ được khung TradeFederation tự động gọi.

Tham số
failure FailureDescription: FailureDescription mô tả nguyên nhân gây ra lỗi

invocationFailed

public void invocationFailed (Throwable cause)

Báo cáo một lệnh gọi chưa hoàn chỉnh do một số điều kiện lỗi.

Sẽ được khung TradeFederation tự động gọi.

Tham số
cause Throwable: nguyên nhân Throwable gây ra lỗi

invocationStarted

public void invocationStarted (IInvocationContext context)

Báo cáo thời điểm bắt đầu lệnh gọi kiểm thử.

Sẽ được khung TradeFederation tự động gọi. Người báo cáo cần ghi đè phương thức này để hỗ trợ báo cáo trên nhiều thiết bị.

Tham số
context IInvocationContext: thông tin về lệnh gọi

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

Trong một số trường hợp, nhật ký phải được liên kết chặt chẽ với các trường hợp kiểm thử, nhưng không thể thực hiện việc này trên lệnh gọi lại testLogSaved(String,LogDataType,InputStreamSource,LogFile) trực tiếp. Do đó, lệnh gọi lại này cho phép cung cấp một mối liên kết rõ ràng một cách tường minh.

Tham số
dataName String: Tên của dữ liệu

logFile LogFile: LogFile đã được ghi nhật ký trước đó và phải được liên kết với trường hợp kiểm thử.

printEvent

public void printEvent (String key, 
                Object event)

Trợ giúp in khoá sự kiện rồi in đối tượng json.

Tham số
key String

event Object

setOutputTestLog

public void setOutputTestLog (boolean outputTestLog)

Đặt xem chúng ta có nên xuất nhật ký kiểm thử hay không.

Tham số
outputTestLog boolean

supportGranularResults

public boolean supportGranularResults ()

Trả về True nếu trình báo cáo hỗ trợ kết quả chi tiết, trả về false trong trường hợp ngược lại.

Giá trị trả về
boolean

testAssumptionFailure

public void testAssumptionFailure (TestDescription testId, 
                String trace)

Được gọi khi một kiểm thử nguyên tử gắn cờ rằng kiểm thử đó giả định một điều kiện sai

Tham số
testId TestDescription: xác định kiểm thử

trace String: dấu vết ngăn xếp của lỗi

testAssumptionFailure

public void testAssumptionFailure (TestDescription testId, 
                FailureDescription failure)

Được gọi khi một kiểm thử nguyên tử gắn cờ rằng kiểm thử đó giả định một điều kiện sai

Tham số
testId TestDescription: xác định kiểm thử

failure FailureDescription: FailureDescription mô tả lỗi và ngữ cảnh của lỗi đó.

testEnded

public void testEnded (TestDescription testId, 
                long endTime, 
                HashMap<String, MetricMeasurement.Metric> metrics)

Phương án thay thế cho testEnded(TestDescription,Map), trong đó chúng ta có thể chỉ định trực tiếp thời gian kết thúc. Kết hợp với testStarted(TestDescription,long) để đo lường chính xác.

Tham số
testId TestDescription: xác định kiểm thử

endTime long: thời gian kết thúc kiểm thử, được đo bằng System.currentTimeMillis()

metrics HashMap: một Map của các chỉ số được phát ra

testEnded

public void testEnded (TestDescription testId, 
                HashMap<String, MetricMeasurement.Metric> metrics)

Báo cáo thời điểm kết thúc quá trình thực thi của một trường hợp kiểm thử riêng lẻ.

Nếu testFailed(TestDescription, FailureDescription) không được gọi, thì kiểm thử này sẽ thành công. Cũng trả về mọi chỉ số khoá/giá trị có thể đã được phát trong quá trình thực thi trường hợp kiểm thử.

Tham số
testId TestDescription: xác định kiểm thử

metrics HashMap: một Map của các chỉ số được phát ra

testFailed

public void testFailed (TestDescription testId, 
                FailureDescription failure)

Báo cáo lỗi của một trường hợp kiểm thử riêng lẻ.

Sẽ được gọi giữa testStarted và testEnded.

Tham số
testId TestDescription: xác định kiểm thử

failure FailureDescription: FailureDescription mô tả lỗi và ngữ cảnh của lỗi đó.

testFailed

public void testFailed (TestDescription testId, 
                String reason)

Báo cáo lỗi của một trường hợp kiểm thử riêng lẻ.

Sẽ được gọi giữa testStarted và testEnded.

Tham số
testId TestDescription: xác định kiểm thử

reason String: dấu vết ngăn xếp của lỗi

testIgnored

public void testIgnored (TestDescription testId)

Được gọi khi một quy trình kiểm thử sẽ không chạy, thường là do một phương thức kiểm thử được chú thích bằng org.junit.Ignore.

Tham số
testId TestDescription: xác định kiểm thử

testLog

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

Cung cấp nhật ký hoặc dữ liệu gỡ lỗi được liên kết từ lệnh gọi kiểm thử.

Phải được gọi trước ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) hoặc ERROR(/ITestInvocationListener#invocationEnded(long))

Khung TradeFederation sẽ tự động gọi phương thức này, cung cấp nhật ký máy chủ lưu trữ và nếu có thể, nhật ký logcat của thiết bị.

Tham số
dataName String: tên mô tả String của dữ liệu. Ví dụ: "device_logcat". Lưu ý: dataName có thể không phải là duy nhất cho mỗi lệnh gọi. tức là người triển khai phải có thể xử lý nhiều lệnh gọi có cùng dataName

dataType LogDataType: LogDataType của dữ liệu

dataStream InputStreamSource: InputStreamSource của dữ liệu. Người triển khai nên gọi createInputStream để bắt đầu đọc dữ liệu và đảm bảo đóng InputStream kết quả khi hoàn tất. Phương thức gọi phải đảm bảo nguồn dữ liệu vẫn hiện diện và có thể truy cập cho đến khi phương thức testLog hoàn tất.

testModuleEnded

public void testModuleEnded ()

Báo cáo thời điểm kết thúc một lần chạy mô-đun.

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

Báo cáo thời điểm bắt đầu chạy một mô-đun. Lệnh gọi lại này được liên kết với testModuleEnded() và không bắt buộc trong chuỗi. Thao tác này chỉ được dùng trong quá trình chạy sử dụng các mô-đun: trình chạy dựa trên bộ.

Tham số
moduleContext IInvocationContext: IInvocationContext của mô-đun.

testRunEnded

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

Báo cáo thời điểm kết thúc một lần chạy kiểm thử. FIXME: Chúng ta không thể có hai giao diện Map<> có kiểu khác nhau, vì vậy, chúng ta phải sử dụng HashMap ở đây.

Tham số
time long: thiết bị đã báo cáo thời gian đã trôi qua, tính bằng mili giây

runMetrics HashMap: các cặp khoá-giá trị được báo cáo ở cuối một lần chạy kiểm thử bằng Metric.

testRunFailed

public void testRunFailed (FailureDescription failure)

Không hoàn tất được quá trình chạy thử báo cáo do lỗi được mô tả bằng FailureDescription.

Tham số
failure FailureDescription: FailureDescription mô tả lỗi và ngữ cảnh của lỗi đó.

testRunFailed

public void testRunFailed (String reason)

Không thể hoàn tất quá trình chạy thử báo cáo do gặp lỗi nghiêm trọng.

Tham số
reason String: String mô tả lý do khiến lần chạy không thành công.

testRunStarted

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

Báo cáo thời điểm bắt đầu một lần chạy kiểm thử.

Tham số
runName String: tên của lần chạy kiểm thử

testCount int: tổng số kiểm thử trong lần chạy kiểm thử

attemptNumber int: số thứ tự, xác định các lần thử khác nhau của cùng một runName chạy nhiều lần. attemptNumber được lập chỉ mục từ 0 và sẽ tăng lên mỗi khi có một lần chạy mới. Ví dụ: Một bài kiểm thử được thử lại chi tiết 3 lần, thì bài kiểm thử đó sẽ có tổng cộng 4 lần chạy trong cùng một runName và attemptNumber sẽ từ 0 đến 3.

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

Báo cáo thời điểm bắt đầu một lần chạy kiểm thử.

Tham số
runName String: tên của lần chạy kiểm thử

testCount int: tổng số kiểm thử trong lần chạy kiểm thử

testRunStarted

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

Báo cáo thời điểm bắt đầu một lần chạy kiểm thử.

Tham số
runName String: tên của lần chạy kiểm thử

testCount int: tổng số kiểm thử trong lần chạy kiểm thử

attemptNumber int: số thứ tự, xác định các lần thử khác nhau của cùng một runName chạy nhiều lần. attemptNumber được lập chỉ mục từ 0 và sẽ tăng lên mỗi khi có một lần chạy mới. Ví dụ: Một bài kiểm thử được thử lại chi tiết 3 lần, thì bài kiểm thử đó sẽ có tổng cộng 4 lần chạy trong cùng một runName và attemptNumber sẽ từ 0 đến 3.

startTime long: thời gian bắt đầu chạy, được đo bằng System.currentTimeMillis()

testRunStopped

public void testRunStopped (long arg0)

Chạy thử báo cáo bị dừng trước khi hoàn tất do người dùng yêu cầu.

TODO: currently unused, consider removing

Tham số
arg0 long: thiết bị đã báo cáo thời gian đã trôi qua, tính bằng mili giây

testSkipped

public void testSkipped (TestDescription testId, 
                SkipReason reason)

Được gọi khi một bài kiểm thử bị bỏ qua và không thực thi vì một lý do thường không mong muốn. Các kiểm thử này sẽ được thử lại để cố gắng thực hiện đúng cách.

Tham số
testId TestDescription: xác định kiểm thử

reason SkipReason: SkipReason

testStarted

public void testStarted (TestDescription testId, 
                long startTime)

Phương án thay thế cho testStarted(TestDescription), trong đó chúng ta cũng chỉ định thời điểm bắt đầu kiểm thử, kết hợp với testEnded(TestDescription,long,Map) để đo lường chính xác.

Tham số
testId TestDescription: xác định kiểm thử

startTime long: thời gian bắt đầu kiểm thử, được đo bằng System.currentTimeMillis()

testStarted

public void testStarted (TestDescription testId)

Báo cáo thời điểm bắt đầu một trường hợp kiểm thử riêng lẻ. Giao diện cũ, nên dùng testStarted(TestDescription) bất cứ khi nào có thể.

Tham số
testId TestDescription: xác định kiểm thử