askui
Version:
Reliable, automated end-to-end-testing that depends on what is shown on your screen instead of the technology you are running on
37 lines (36 loc) • 1.31 kB
TypeScript
import { StepStatus } from './step-status';
import { Snapshot } from './snapshot';
import { Instruction } from './instruction';
import { StepRun } from './step-run';
export interface Step {
readonly instruction: Readonly<Instruction>;
readonly status: StepStatus;
/**
* A snapshot of the state of the screen before the step is
* ran which is nearly immediately after the call to `.exec()`
*/
readonly begin?: Snapshot | undefined;
/**
* The duration of the step in milliseconds based on the start
* and end time. If the step is still running, this property is undefined.
*/
readonly duration?: number | undefined;
/**
* A snapshot of the state of the screen after the step has been run.
* If the step is still running or still pending, this property is undefined.
*/
readonly end?: Snapshot | undefined;
/**
* When a step failed or is erroneous, this property contains the error.
*/
readonly error?: Error | undefined;
readonly runs: Readonly<StepRun[]>;
readonly retries: Readonly<StepRun[]>;
readonly retryCount: number;
readonly firstRun?: StepRun | undefined;
readonly lastRun?: StepRun | undefined;
/**
* retryCount > 0.
*/
readonly flaky: boolean;
}