jpglens
Version:
🔍 Universal AI-Powered UI Testing - See your interfaces through the lens of intelligence
93 lines • 2.73 kB
TypeScript
/**
* 🔍 jpglens - Selenium WebDriver Integration
* Universal AI-Powered UI Testing
*
* @author Taha Bahrami (Kaito)
* @license MIT
*/
import { AnalysisContext, AnalysisResult, UserJourney, JPGLensConfig } from '../core/types.js';
/**
* Selenium WebDriver integration for jpglens
* Cross-browser AI analysis using Selenium
*/
export declare class SeleniumJPGLens {
private driver;
private aiAnalyzer;
private screenshotCapture;
private config;
constructor(driver: any, config?: JPGLensConfig);
/**
* Analyze current page state with Selenium
*/
analyzeCurrentState(context: AnalysisContext): Promise<AnalysisResult>;
/**
* Analyze with minimal context (convenience method)
*/
analyze(context: Partial<AnalysisContext>): Promise<AnalysisResult>;
/**
* Cross-browser analysis
*/
analyzeCrossBrowser(context: AnalysisContext, browsers?: string[]): Promise<{
browser: string;
result: AnalysisResult;
}[]>;
/**
* Execute complete user journey with Selenium
*/
analyzeCompleteJourney(journey: UserJourney): Promise<AnalysisResult[]>;
/**
* Execute user actions with Selenium
*/
private executeUserActions;
/**
* Enhance context with Selenium page information
*/
private enhanceContextWithPageInfo;
/**
* Detect JavaScript frameworks using Selenium
*/
private detectFrameworks;
/**
* Detect design system using Selenium
*/
private detectDesignSystem;
/**
* Get browser information
*/
private getBrowserInfo;
/**
* Wait for page to be ready for analysis
*/
waitForPageReady(): Promise<void>;
/**
* Set up optimal conditions for screenshot analysis
*/
prepareForAnalysis(): Promise<void>;
}
/**
* Global functions for easy Selenium integration
*/
/**
* Create jpglens analyzer for Selenium driver
*/
export declare function createSeleniumJPGLens(driver: any): SeleniumJPGLens;
/**
* Analyze current state (convenience function)
*/
export declare function analyzeCurrentState(driver: any, context: AnalysisContext): Promise<AnalysisResult>;
/**
* Quick analysis with minimal setup
*/
export declare function analyze(driver: any, context: Partial<AnalysisContext>): Promise<AnalysisResult>;
/**
* Cross-browser analysis
*/
export declare function analyzeCrossBrowser(driver: any, context: AnalysisContext, browsers?: string[]): Promise<{
browser: string;
result: AnalysisResult;
}[]>;
/**
* Complete journey analysis
*/
export declare function analyzeCompleteJourney(driver: any, journey: UserJourney): Promise<AnalysisResult[]>;
//# sourceMappingURL=selenium.d.ts.map