From db5f92625c5ad3a37d66fa312d586aba30e04b70 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Mon, 24 Nov 2025 22:19:29 +0100 Subject: [PATCH 1/2] Fixing Java tests --- .../java/dev/selenium/browsers/ChromeTest.java | 17 ++++++++++++----- .../java/dev/selenium/browsers/EdgeTest.java | 7 +++++-- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java b/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java index 4ccd625f8a92..00aa661d18f5 100644 --- a/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java +++ b/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java @@ -16,6 +16,9 @@ import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; +import org.openqa.selenium.bidi.webextension.ExtensionPath; +import org.openqa.selenium.bidi.webextension.InstallExtensionParameters; +import org.openqa.selenium.bidi.webextension.WebExtension; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeDriverService; import org.openqa.selenium.chrome.ChromeOptions; @@ -58,13 +61,17 @@ public void setBrowserLocation() { @Test public void extensionOptions() { ChromeOptions options = getDefaultChromeOptions(); - Path path = Paths.get("src/test/resources/extensions/webextensions-selenium-example.crx"); - File extensionFilePath = new File(path.toUri()); + options.enableBiDi(); + options.addArguments("--remote-debugging-pipe"); + options.addArguments("--enable-unsafe-extension-debugging"); + driver = new ChromeDriver(options); - options.addExtensions(extensionFilePath); - options.addArguments("--disable-features=DisableLoadExtensionCommandLineSwitch"); + Path path = Paths.get("src/test/resources/extensions/selenium-example"); + WebExtension extension = new WebExtension(driver); + ExtensionPath extensionPath = new ExtensionPath(path.toString()); + InstallExtensionParameters parameters = new InstallExtensionParameters(extensionPath); + extension.install(parameters); - driver = new ChromeDriver(options); driver.get("https://www.selenium.dev/selenium/web/blank.html"); WebElement injected = driver.findElement(By.id("webextensions-selenium-example")); Assertions.assertEquals( diff --git a/examples/java/src/test/java/dev/selenium/browsers/EdgeTest.java b/examples/java/src/test/java/dev/selenium/browsers/EdgeTest.java index 534d78a4cb6f..460c07b02e22 100644 --- a/examples/java/src/test/java/dev/selenium/browsers/EdgeTest.java +++ b/examples/java/src/test/java/dev/selenium/browsers/EdgeTest.java @@ -21,7 +21,10 @@ import org.openqa.selenium.edge.EdgeDriver; import org.openqa.selenium.edge.EdgeDriverService; import org.openqa.selenium.edge.EdgeOptions; -import org.openqa.selenium.logging.*; +import org.openqa.selenium.logging.LogEntries; +import org.openqa.selenium.logging.LogEntry; +import org.openqa.selenium.logging.LogType; +import org.openqa.selenium.logging.LoggingPreferences; import org.openqa.selenium.remote.service.DriverFinder; @@ -116,7 +119,7 @@ public void logsToConsole() throws IOException { driver = new EdgeDriver(service); String fileContent = new String(Files.readAllBytes(logLocation.toPath())); - Assertions.assertTrue(fileContent.contains("Starting Microsoft Edge WebDriver")); + Assertions.assertTrue(fileContent.contains("Starting msedgedriver")); } @Test From 9a6ba01a6d2cf2f03fe292aa65b5d4f30ec67a52 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Tue, 25 Nov 2025 10:06:04 +0100 Subject: [PATCH 2/2] Avoiding test on Windows for now. --- .../java/src/test/java/dev/selenium/browsers/ChromeTest.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java b/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java index 00aa661d18f5..0d0710f4f2ff 100644 --- a/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java +++ b/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java @@ -14,6 +14,8 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.condition.DisabledOnOs; +import org.junit.jupiter.api.condition.OS; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.openqa.selenium.bidi.webextension.ExtensionPath; @@ -59,6 +61,7 @@ public void setBrowserLocation() { } @Test + @DisabledOnOs(OS.WINDOWS) public void extensionOptions() { ChromeOptions options = getDefaultChromeOptions(); options.enableBiDi();