From 771f3ed250d19ccefe60238dadb67e4be652fbd1 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Mon, 30 Jan 2023 17:30:04 +0100 Subject: [PATCH 1/6] Adding arguments to Java and C# --- examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs | 7 +++++++ .../src/test/java/dev/selenium/browsers/ChromeTest.java | 8 ++++++++ 2 files changed, 15 insertions(+) diff --git a/examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs b/examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs index 833c71df19bc..129e84e18d7b 100644 --- a/examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs +++ b/examples/dotnet/SeleniumDocs/Browsers/ChromeTest.cs @@ -8,7 +8,14 @@ public class ChromeTest { public void BasicOptions() { var options = new ChromeOptions(); var driver = new ChromeDriver(options); + driver.Quit(); + } + [TestMethod] + public void HeadlessOptions() { + var options = new ChromeOptions(); + options.AddArgument("--headless=new"); + var driver = new ChromeDriver(options); driver.Quit(); } } 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 209bc58b0528..69526d65e144 100644 --- a/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java +++ b/examples/java/src/test/java/dev/selenium/browsers/ChromeTest.java @@ -18,4 +18,12 @@ public void basicOptions() { ChromeOptions options = new ChromeOptions(); driver = new ChromeDriver(options); } + + @Test + public void headlessOptions() { + ChromeOptions options = new ChromeOptions(); + options.addArguments("--headless=new"); + driver = new ChromeDriver(options); + } + } From 38a6d154f7e82c884427826b24bd4432190d99df Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Mon, 30 Jan 2023 18:14:26 +0100 Subject: [PATCH 2/6] Removing placeholder --- website_and_docs/content/blog/2023/selenium-4-8-0-released.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website_and_docs/content/blog/2023/selenium-4-8-0-released.md b/website_and_docs/content/blog/2023/selenium-4-8-0-released.md index 872bcfcd8c81..55fba55cc66f 100644 --- a/website_and_docs/content/blog/2023/selenium-4-8-0-released.md +++ b/website_and_docs/content/blog/2023/selenium-4-8-0-released.md @@ -18,7 +18,7 @@ Links to everything can be found on our [downloads page][downloads]. * Chrome DevTools support is now: v107, v108, and v109 (Firefox still uses v85 for all versions) * Large JS executions have the name as a comment to help understand what payload being sent to/from server/driver. * Deprecation of headless convenience method. Read more about in the [headless blog post](/blog/2023/headless-is-going-away/). - * Ruby overhauls Options classes (again) (needs blog post) + * Ruby overhauls Options classes (again) * Initial [BiDi] support in JavaScript, Ruby, and improvements in Java. * We're continuing to remove [Legacy Protocol](/blog/2022/legacy-protocol-support/) classes in Java and Grid. * Accommodate ability to specify sub-paths in Grid. From 88d5eb83d009eb3f79f0d34423077c98988ed0b6 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Mon, 30 Jan 2023 20:21:12 +0100 Subject: [PATCH 3/6] Adding args to Edge and Firefox too --- .../dotnet/SeleniumDocs/Browsers/EdgeTest.cs | 8 +++++ .../SeleniumDocs/Browsers/FirefoxTest.cs | 36 +++++++++++-------- .../java/dev/selenium/browsers/EdgeTest.java | 8 +++++ .../dev/selenium/browsers/FirefoxTest.java | 7 ++++ 4 files changed, 45 insertions(+), 14 deletions(-) diff --git a/examples/dotnet/SeleniumDocs/Browsers/EdgeTest.cs b/examples/dotnet/SeleniumDocs/Browsers/EdgeTest.cs index 40129778fd7e..d496c1b8a631 100644 --- a/examples/dotnet/SeleniumDocs/Browsers/EdgeTest.cs +++ b/examples/dotnet/SeleniumDocs/Browsers/EdgeTest.cs @@ -11,7 +11,15 @@ public void BasicOptions() { var options = new EdgeOptions(); var driver = new EdgeDriver(options); + driver.Quit(); + } + [TestMethod] + public void HeadlessOptions() + { + var options = new EdgeOptions(); + options.AddArgument("--headless=new"); + var driver = new EdgeDriver(options); driver.Quit(); } } diff --git a/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs b/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs index cd7fedfa60b4..87cf289dbb56 100644 --- a/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs +++ b/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs @@ -42,30 +42,38 @@ public void InstallAddon() [TestMethod] public void UnInstallAddon() { - driver = new FirefoxDriver(); + driver = new FirefoxDriver(); - string baseDir = AppDomain.CurrentDomain.BaseDirectory; - string extensionFilePath = Path.Combine(baseDir, "../../../Extensions/webextensions-selenium-example.xpi"); - string extensionId = driver.InstallAddOnFromFile(Path.GetFullPath(extensionFilePath)); - driver.UninstallAddOn(extensionId); + string baseDir = AppDomain.CurrentDomain.BaseDirectory; + string extensionFilePath = Path.Combine(baseDir, "../../../Extensions/webextensions-selenium-example.xpi"); + string extensionId = driver.InstallAddOnFromFile(Path.GetFullPath(extensionFilePath)); + driver.UninstallAddOn(extensionId); - driver.Url = "https://www.selenium.dev/selenium/web/blank.html"; - Assert.AreEqual(driver.FindElements(By.Id("webextensions-selenium-example")).Count, 0); + driver.Url = "https://www.selenium.dev/selenium/web/blank.html"; + Assert.AreEqual(driver.FindElements(By.Id("webextensions-selenium-example")).Count, 0); } [TestMethod] public void InstallUnsignedAddon() { - driver = new FirefoxDriver(); + driver = new FirefoxDriver(); - string baseDir = AppDomain.CurrentDomain.BaseDirectory; - string extensionDirPath = Path.Combine(baseDir, "../../../Extensions/webextensions-selenium-example/"); - driver.InstallAddOnFromDirectory(Path.GetFullPath(extensionDirPath), true); + string baseDir = AppDomain.CurrentDomain.BaseDirectory; + string extensionDirPath = Path.Combine(baseDir, "../../../Extensions/webextensions-selenium-example/"); + driver.InstallAddOnFromDirectory(Path.GetFullPath(extensionDirPath), true); - driver.Url = "https://www.selenium.dev/selenium/web/blank.html"; + driver.Url = "https://www.selenium.dev/selenium/web/blank.html"; - IWebElement injected = driver.FindElement(By.Id("webextensions-selenium-example")); - Assert.AreEqual("Content injected by webextensions-selenium-example", injected.Text); + IWebElement injected = driver.FindElement(By.Id("webextensions-selenium-example")); + Assert.AreEqual("Content injected by webextensions-selenium-example", injected.Text); } + + [TestMethod] + public void HeadlessOptions() + { + var options = new FirefoxOptions(); + options.AddArgument("-headless"); + var driver = new FirefoxDriver(options); + } } } \ No newline at end of file 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 eaa2bb521722..e80108f0556e 100644 --- a/examples/java/src/test/java/dev/selenium/browsers/EdgeTest.java +++ b/examples/java/src/test/java/dev/selenium/browsers/EdgeTest.java @@ -18,4 +18,12 @@ public void basicOptions() { EdgeOptions options = new EdgeOptions(); driver = new EdgeDriver(options); } + + @Test + public void headlessOptions() { + EdgeOptions options = new EdgeOptions(); + options.addArguments("--headless=new"); + driver = new EdgeDriver(options); + } + } diff --git a/examples/java/src/test/java/dev/selenium/browsers/FirefoxTest.java b/examples/java/src/test/java/dev/selenium/browsers/FirefoxTest.java index d7e70826fde5..2c2f5e10cdfa 100644 --- a/examples/java/src/test/java/dev/selenium/browsers/FirefoxTest.java +++ b/examples/java/src/test/java/dev/selenium/browsers/FirefoxTest.java @@ -57,4 +57,11 @@ public void installUnsignedAddonPath() { WebElement injected = driver.findElement(By.id("webextensions-selenium-example")); Assertions.assertEquals("Content injected by webextensions-selenium-example", injected.getText()); } + + @Test + public void headlessOptions() { + FirefoxOptions options = new FirefoxOptions(); + options.addArguments("-headless"); + driver = new FirefoxDriver(options); + } } From fa23a474926b2f936fde463a3ec6c662692eb2b9 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Mon, 30 Jan 2023 22:31:47 +0100 Subject: [PATCH 4/6] Fixing headless in FF --- examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs b/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs index 87cf289dbb56..d31dc302fb3d 100644 --- a/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs +++ b/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs @@ -72,7 +72,7 @@ public void InstallUnsignedAddon() public void HeadlessOptions() { var options = new FirefoxOptions(); - options.AddArgument("-headless"); + options.AddArgument("--headless"); var driver = new FirefoxDriver(options); } } From dfcaea4f0b54a1a630ef49e4d63d824490c0901d Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Mon, 30 Jan 2023 22:55:31 +0100 Subject: [PATCH 5/6] Avoid declaring driver --- examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs b/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs index d31dc302fb3d..70f69f8e243f 100644 --- a/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs +++ b/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs @@ -73,7 +73,7 @@ public void HeadlessOptions() { var options = new FirefoxOptions(); options.AddArgument("--headless"); - var driver = new FirefoxDriver(options); + driver = new FirefoxDriver(options); } } } \ No newline at end of file From f06cbfb538626ded06aca0a2718e32009ce04e2b Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Mon, 30 Jan 2023 22:59:02 +0100 Subject: [PATCH 6/6] Indentation fix --- examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs b/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs index 70f69f8e243f..b60f5c577ca0 100644 --- a/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs +++ b/examples/dotnet/SeleniumDocs/Browsers/FirefoxTest.cs @@ -53,9 +53,9 @@ public void UnInstallAddon() Assert.AreEqual(driver.FindElements(By.Id("webextensions-selenium-example")).Count, 0); } - [TestMethod] - public void InstallUnsignedAddon() - { + [TestMethod] + public void InstallUnsignedAddon() + { driver = new FirefoxDriver(); string baseDir = AppDomain.CurrentDomain.BaseDirectory; @@ -66,7 +66,7 @@ public void InstallUnsignedAddon() IWebElement injected = driver.FindElement(By.Id("webextensions-selenium-example")); Assert.AreEqual("Content injected by webextensions-selenium-example", injected.Text); - } + } [TestMethod] public void HeadlessOptions()