CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/maven-org-seleniumhq-selenium--selenium-devtools-v129

Chrome DevTools Protocol version 129 bindings for Selenium WebDriver.

Pending
Overview
Eval results
Files

domains.mddocs/

DevTools Domains

The v129Domains class serves as the central factory for accessing all Chrome DevTools Protocol v129 domain implementations. It manages the lifecycle and dependencies of all domain-specific APIs.

Capabilities

Domains Factory

Creates and manages instances of all v129 DevTools protocol domains.

/**
 * Central factory providing access to all v129 DevTools protocol domains
 * @param devtools - DevTools instance for protocol communication
 */
public class v129Domains implements Domains {
    public v129Domains(DevTools devtools);
    
    /** Returns the Events domain for console and exception handling */
    public Events<?, ?> events();
    
    /** Returns the Javascript domain for script execution and binding */
    public Javascript<?, ?> javascript();
    
    /** Returns the Network domain for request/response interception */
    public Network<?, ?> network();
    
    /** Returns the Target domain for tab and context management */
    public Target target();
    
    /** Returns the Log domain for browser log access */
    public Log log();
}

Usage Examples:

import org.openqa.selenium.devtools.DevTools;
import org.openqa.selenium.devtools.v129.v129Domains;

// Create domains factory
DevTools devTools = driver.getDevTools();
devTools.createSession();
v129Domains domains = new v129Domains(devTools);

// Access specific domains
var networkDomain = domains.network();
var logDomain = domains.log();
var eventsDomain = domains.events();

// Use domain capabilities
devTools.send(logDomain.enable());
devTools.send(networkDomain.enableNetworkCaching());

Service Provider Information

Provides version and factory information for automatic service discovery.

/**
 * Service provider implementation for CDP version 129
 * Automatically registered via @AutoService annotation
 */
@AutoService(CdpInfo.class)
public class v129CdpInfo extends CdpInfo {
    /** Initializes with version 129 and v129Domains factory */
    public v129CdpInfo();
}

Usage Examples:

// Service is automatically discovered and registered
// No direct instantiation required - used internally by Selenium

// To verify version support:
import org.openqa.selenium.devtools.CdpInfo;
import java.util.ServiceLoader;

ServiceLoader<CdpInfo> loader = ServiceLoader.load(CdpInfo.class);
for (CdpInfo info : loader) {
    if (info instanceof v129CdpInfo) {
        // v129 support is available
        break;
    }
}

Types

Base Interfaces

// From idealized DevTools interfaces
interface Domains {
    Events<?, ?> events();
    Javascript<?, ?> javascript();
    Network<?, ?> network();
    Target target();
    Log log();
}

// Service provider base
abstract class CdpInfo {
    protected CdpInfo(int majorVersion, Supplier<Domains> domainsSupplier);
}

Dependencies

// Required imports for domains usage
import org.openqa.selenium.devtools.DevTools;
import org.openqa.selenium.devtools.idealized.Domains;
import org.openqa.selenium.devtools.idealized.Events;
import org.openqa.selenium.devtools.idealized.Javascript;
import org.openqa.selenium.devtools.idealized.Network;
import org.openqa.selenium.devtools.idealized.log.Log;
import org.openqa.selenium.devtools.idealized.target.Target;

Install with Tessl CLI

npx tessl i tessl/maven-org-seleniumhq-selenium--selenium-devtools-v129

docs

domains.md

events.md

index.md

javascript.md

logging.md

network.md

target.md

tile.json