@wdio/browserstack-service
Version:
WebdriverIO service for better Browserstack integration
82 lines • 3.84 kB
TypeScript
import TestFramework from './testFramework.js';
import TestFrameworkInstance from '../instances/testFrameworkInstance.js';
import type { Frameworks } from '@wdio/types';
export default class WdioMochaTestFramework extends TestFramework {
static KEY_HOOK_LAST_STARTED: string;
static KEY_HOOK_LAST_FINISHED: string;
/**
* Constructor for the TestFramework
* @param {Array} testFrameworks - List of Test frameworks
* @param {Map} testFrameworkVersions - Name of the Test frameworks
* @param {string} binSessionId - BinSessionId
*/
constructor(testFrameworks: string[], testFrameworkVersions: Record<string, string>, binSessionId: string);
/**
* Find instance and track any state for the test framework
* @param {TestFrameworkState} testFrameworkState
* @param {HookState} hookState
* @param {*} args
*/
trackEvent(testFrameworkState: State, hookState: State, args?: Record<string, unknown>): Promise<void>;
/**
* Resolve instance for the test framework
* @param {TestFrameworkState} testFrameworkState
* @param {HookState} hookState
* @param {*} args
* @returns {TestFrameworkInstance}
*/
resolveInstance(testFrameworkState: State, hookState: State, args?: Record<string, unknown>): TestFrameworkInstance | null;
/**
* Track WebdriverIO instance
* @param {TestFrameworkState} testFrameworkState
* @param {*} args
*/
trackWdioMochaInstance(testFrameworkState: State, args: Record<string, unknown>): void;
getTestData(instance: TestFrameworkInstance, test: Frameworks.Test): Promise<Record<string, unknown>>;
loadTestResult(instance: TestFrameworkInstance, args: Record<string, unknown>): void;
/**
* Load log entries into the test framework instance.
* @param instance TestFrameworkInstance
* @param testFrameworkState TestFrameworkState
* @param hookState HookState
* @param args Additional arguments (level, message, etc.)
*/
loadLogEntries(instance: TestFrameworkInstance, testFrameworkState: State, hookState: State, logEntry: Record<string, unknown>): void;
/**
* Get the last active hook for the given instance and hook key.
* @param instance TestFrameworkInstance
* @param lastHookKey string
* @returns Record<string, unknown> | null
*/
static lastActiveHook(instance: TestFrameworkInstance, lastHookKey: string): Record<string, unknown> | null;
/**
* Clear logs for a specific hook.
* @param instance TestFrameworkInstance
* @param lastHookKey string
*/
static clearHookLogs(instance: TestFrameworkInstance, lastHookKey: string): void;
/**
* Clear all logs for the given instance, test framework state, and hook state.
* @param instance TestFrameworkInstance
* @param testFrameworkState TestFrameworkState
* @param hookState HookState
*/
static clearLogs(instance: TestFrameworkInstance, testFrameworkState: State, hookState: State): void;
/**
* Get all log entries for the given instance, test framework state, and hook state.
* @param instance TestFrameworkInstance
* @param testFrameworkState TestFrameworkState
* @param hookState HookState
* @returns unknown[]
*/
static getLogEntries(instance: TestFrameworkInstance, testFrameworkState: State, hookState: State): unknown[];
/**
* Track hook events for the test framework.
* @param instance TestFrameworkInstance
* @param testFrameworkState TestFrameworkState
* @param hookState HookState
* @param args Additional arguments (e.g., test result, test method)
*/
trackHookEvents(instance: TestFrameworkInstance, testFrameworkState: State, hookState: State, args: Record<string, unknown>): Promise<void>;
}
//# sourceMappingURL=wdioMochaTestFramework.d.ts.map