Category: Selenium

Selenium vs FluentLenium

Compares Selenium WebDriver with the FluentLenium extension by implementing the same test scenario, demonstrating how FluentLenium simplifies setup, interactions, assertions, and waiting, leading to more concise code.

Read more

Automate your XSS tests with Selenium

Explains how to automate Reflected Cross-Site Scripting (XSS) tests using Selenium, covering disabling Chrome's XSS auditor, implementing a Page Object for a vulnerable page (XSS Game Level 1), injecting a script payload, and asserting if an alert appears.

Read more

Firefox Selenium Browser Capabilities explained

Explains the shift from Firefox Profiles to FirefoxOptions/DesiredCapabilities for configuring Firefox in Selenium, aligning it with Chrome's approach. Covers GeckoDriver setup and demonstrates setting capabilities like insecure certs acceptance, preferences, and log level.

Read more

Headless testing with Firefox

Demonstrates running Firefox headlessly with Selenium, showing the simple `--headless` argument configuration in FirefoxOptions. Includes a full FluentLenium/TestNG demo testing the author's blog, highlighting the benefit for CI environments.

Read more

Headless testing with Google Chrome

Explains headless browser testing benefits for CI, focusing on Google Chrome's native headless mode (v59+). Provides a Java/Selenium/FluentLenium demo showing how to enable headless mode via ChromeOptions and run a simple AJAX test.

Read more

How to Download files using Selenium 2

Provides four methods to handle file downloads in Selenium/Java without brittle tools like AutoIT: checking URL status with HttpClient, simulating user download with cookies, verifying non-empty download, and confirming MD5 checksum.

Read more

Selenium - Browser Capabilities explained 1

Explains configuring Chrome capabilities in Selenium Java using ChromeOptions (within DesiredCapabilities). Covers adding arguments/switches and experimental options/prefs, providing links to comprehensive lists and examples like disabling notifications.

Read more

Introducing FluentLenium 1

Introduces FluentLenium framework for Selenium via a Facebook group approval automation example using Java/TestNG. Covers setup, Page Objects, CSS selectors, and dynamic waits.

Read more

Selenium maintenance hell

Addresses the common issue of unstable Selenium tests ('maintenance hell'), emphasizing the need to prioritize stability, exclude flaky tests, and build trust in automation results.

Read more