Class TraceEventRecorder
java.lang.Object
com.shaft.tools.io.internal.TraceEventRecorder
Thread-local Selenium trace event recorder used by failure trace artifacts.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordActive action event handle. -
Method Summary
Modifier and TypeMethodDescriptionstatic voidclear()Clears current thread action events.static voidfinish(TraceEventRecorder.Event event, String status, String message, Throwable exception, Map<String, String> metadata, List<String> attachmentSummaries) Finishes a timed trace action.static voidfinish(TraceEventRecorder.Event event, String status, String message, Throwable exception, Map<String, String> metadata, List<String> attachmentSummaries, Map<String, Object> actionability) Finishes a timed trace action with actionability diagnostics.static StringReturns the latest finished action id for linking follow-up artifacts.static voidrecord(String category, String name, String status, String locator, org.openqa.selenium.WebDriver driver, String message, Throwable exception, Map<String, String> metadata, List<String> attachmentSummaries) Records a finished action without measuring an enclosing block.static voidrecord(String category, String name, String status, String locator, org.openqa.selenium.WebDriver driver, String message, Throwable exception, Map<String, String> metadata, List<String> attachmentSummaries, Map<String, Object> actionability) Records a finished action with actionability diagnostics without measuring an enclosing block.static voidrecordScreenshot(TraceEventRecorder.Event event, byte[] png) Buffers a screenshot for the given action, keyed byTraceEventRecorder.Event.id(), sofinish(TraceEventRecorder.Event, String, String, Throwable, Map, List)can embed it in the action's trace JSON.static TraceEventRecorder.EventStarts timing a trace action for the current thread.static TraceEventRecorder.Eventstart(String category, String name, org.openqa.selenium.By locator, org.openqa.selenium.WebDriver driver) Starts timing a trace action for the current thread.
-
Method Details
-
start
public static TraceEventRecorder.Event start(String category, String name, org.openqa.selenium.By locator, org.openqa.selenium.WebDriver driver) Starts timing a trace action for the current thread.- Parameters:
category- action categoryname- action namelocator- action locatordriver- active WebDriver, ornull- Returns:
- started event handle, or a disabled handle when tracing is off
-
start
public static TraceEventRecorder.Event start(String category, String name, String locator, org.openqa.selenium.WebDriver driver) Starts timing a trace action for the current thread.- Parameters:
category- action categoryname- action namelocator- action locator textdriver- active WebDriver, ornull- Returns:
- started event handle, or a disabled handle when tracing is off
-
recordScreenshot
Buffers a screenshot for the given action, keyed byTraceEventRecorder.Event.id(), sofinish(TraceEventRecorder.Event, String, String, Throwable, Map, List)can embed it in the action's trace JSON. Gated byshaft.trace.includeScreenshotsand bounded byshaft.trace.maxArtifactMbso buffered PNGs can never grow unbounded within a single thread's trace. Never throws.- Parameters:
event- started event handle fromstart(String, String, By, WebDriver)png- screenshot bytes, ornull
-
record
public static void record(String category, String name, String status, String locator, org.openqa.selenium.WebDriver driver, String message, Throwable exception, Map<String, String> metadata, List<String> attachmentSummaries) Records a finished action without measuring an enclosing block.- Parameters:
category- action categoryname- action namestatus- action statuslocator- action locator textdriver- active WebDriver, ornullmessage- action messageexception- failure exception, ornullmetadata- action metadataattachmentSummaries- attachment summaries
-
record
public static void record(String category, String name, String status, String locator, org.openqa.selenium.WebDriver driver, String message, Throwable exception, Map<String, String> metadata, List<String> attachmentSummaries, Map<String, Object> actionability) Records a finished action with actionability diagnostics without measuring an enclosing block.- Parameters:
category- action categoryname- action namestatus- action statuslocator- action locator textdriver- active WebDriver, ornullmessage- action messageexception- failure exception, ornullmetadata- action metadataattachmentSummaries- attachment summariesactionability- actionability diagnostics
-
finish
public static void finish(TraceEventRecorder.Event event, String status, String message, Throwable exception, Map<String, String> metadata, List<String> attachmentSummaries) Finishes a timed trace action.- Parameters:
event- event handle returned fromstart(String, String, By, WebDriver)status- action statusmessage- action messageexception- failure exception, ornullmetadata- action metadataattachmentSummaries- attachment summaries
-
finish
public static void finish(TraceEventRecorder.Event event, String status, String message, Throwable exception, Map<String, String> metadata, List<String> attachmentSummaries, Map<String, Object> actionability) Finishes a timed trace action with actionability diagnostics.- Parameters:
event- event handle returned fromstart(String, String, By, WebDriver)status- action statusmessage- action messageexception- failure exception, ornullmetadata- action metadataattachmentSummaries- attachment summariesactionability- actionability diagnostics
-
latestActionId
Returns the latest finished action id for linking follow-up artifacts.- Returns:
- latest action id, or blank when no action is recorded
-
clear
public static void clear()Clears current thread action events.
-