/** * QA360 HTML Reporter * * Generates interactive HTML reports with embedded screenshots, * videos, and traces for UI test results. */ export interface ReportData { title: string; summary: { total: number; passed: number; failed: number; skipped: number; duration: number; timestamp: string; }; tests: TestReport[]; artifacts?: { screenshots: ReportScreenshotArtifact[]; videos: ReportVideoArtifact[]; traces: ReportTraceArtifact[]; }; environment?: { browser?: string; platform?: string; nodeVersion?: string; qa360Version?: string; }; } export interface TestReport { id: string; name: string; status: 'passed' | 'failed' | 'skipped'; duration: number; error?: string; steps: StepReport[]; artifacts?: { screenshots: string[]; video?: string; trace?: string; }; } export interface StepReport { name: string; action: string; selector?: string; value?: string; status: 'passed' | 'failed' | 'skipped'; duration: number; error?: string; screenshot?: string; } export interface ReportScreenshotArtifact { path: string; timestamp: string; type: 'before' | 'after' | 'error' | 'initial'; stepIndex?: number; } export interface ReportVideoArtifact { path: string; duration: number; } export interface ReportTraceArtifact { path: string; format: string; } /** * HTML Report Generator */ export declare class HTMLReporter { /** * Generate HTML report from test data */ static generate(data: ReportData, outputPath: string): void; /** * Generate HTML content */ private static generateHTML; /** * Get CSS styles */ private static getCSS; /** * Generate header HTML */ private static getHeader; /** * Generate summary HTML */ private static getSummary; /** * Generate tests HTML */ private static getTests; /** * Generate single test card HTML */ private static getTestCard; /** * Generate step HTML */ private static getStep; /** * Generate artifacts section HTML */ private static getArtifacts; /** * Generate JavaScript */ private static getJavaScript; /** * Escape HTML special characters */ private static escapeHTML; } /** * Generate HTML report from Playwright test results */ export declare function generateHTMLReport(title: string, results: any[], outputPath: string, artifacts?: any): void;