Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ Items tagged **`good first issue`** or **`help wanted`** are open for contributi

Most users find a framework by searching, not by browsing GitHub.

- **Per-page SEO descriptions** across all docs pages β€” *in progress*.
- βœ… **Per-page SEO descriptions** across all docs pages β€” done. All 51 pages already had
one; trimmed the 10 that ran past Google's ~160-char display limit (2026-10-01).
- **"Why" pages** β€” Why Selenium Boot? Β· Why not plain Selenium? Β· Why not Playwright? Β· Why accessibility-first locators? Β· Why WaitEngine? `good first issue`
- **Recipes section** β€” task-titled, search-matched guides: upload a file, download a PDF, iframes, Shadow DOM, tables, infinite scroll, OAuth/SSO, alerts, drag & drop, REST + UI. `good first issue`
- **Migration guides** β€” from Selenium + TestNG, from WebDriverManager, from Selenide, from Serenity; plus a "coming from Playwright" bridge (familiar vs. different, **not** a replacement claim). `help wanted`
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/migration/coming-from-playwright.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Coming from Playwright to Selenium Boot: a bridge, not a replacement. What's familiar β€” getByRole/getByLabel locators, auto-waiting, web-first assertThat β€” and what's genuinely different: architecture, language/runtime, and Selenium Grid."
description: "Coming from Playwright to Selenium Boot: a bridge, not a replacement. What's familiar β€” getByRole/getByLabel locators, auto-waiting, web-first assertions."
id: coming-from-playwright
title: Coming from Playwright
sidebar_label: Coming from Playwright
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/migration/from-selenium-testng.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Migrate a Selenium + TestNG framework to Selenium Boot: delete your driver factory, wait utils, retry analyzer, and reporting glue, and see the boilerplate disappear side by side."
description: "Migrate a Selenium + TestNG framework to Selenium Boot: delete your driver factory, wait utils, retry analyzer, and reporting glue."
id: from-selenium-testng
title: Migrate from Selenium + TestNG
sidebar_label: From Selenium + TestNG
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/migration/from-webdrivermanager.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Migrate off WebDriverManager: modern Selenium bundles Selenium Manager, so Selenium Boot resolves driver binaries with zero WebDriverManager code β€” delete the setup calls and the dependency."
description: "Migrate off WebDriverManager: modern Selenium bundles Selenium Manager, so Selenium Boot resolves driver binaries with zero WebDriverManager code."
id: from-webdrivermanager
title: Migrate from WebDriverManager
sidebar_label: From WebDriverManager
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/recipes/download-and-verify-a-pdf.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Download and verify a PDF in Selenium: DownloadManager waits for the file to appear in the download directory, handling partial downloads, so you can assert it exists and is non-empty."
description: "Download and verify a PDF in Selenium: DownloadManager waits for the file to appear in the download directory, handling partial downloads."
id: download-and-verify-a-pdf
title: Download and verify a PDF
sidebar_label: Download & verify a PDF
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/recipes/handle-iframes.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Handle iframes in Selenium without manual switchTo() bookkeeping: Selenium Boot's withinFrame runs your actions inside the frame and restores the previous context automatically, even when nested."
description: "Handle iframes in Selenium without manual switchTo() bookkeeping: withinFrame runs your actions inside the frame and restores context automatically."
id: handle-iframes
title: Handle iframes
sidebar_label: Handle iframes
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/recipes/handle-shadow-dom.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Handle Shadow DOM in Selenium: Selenium Boot pierces shadow roots with shadowFind, shadowClick, and shadowType, and traverses nested web components with shadowPierce β€” no manual JavaScript."
description: "Handle Shadow DOM in Selenium: Selenium Boot pierces shadow roots with shadowFind, shadowClick, and shadowType, no manual JavaScript needed."
id: handle-shadow-dom
title: Handle Shadow DOM
sidebar_label: Handle Shadow DOM
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/recipes/upload-a-file.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Upload a file in Selenium without OS dialogs: Selenium Boot's upload(By, path) sets the file input directly, with paths resolved from the classpath or an absolute location."
description: "Upload a file in Selenium without OS dialogs: Selenium Boot's upload(By, path) sets the file input directly, with paths resolved from the classpath or disk."
id: upload-a-file
title: Upload a file
sidebar_label: Upload a file
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/why/why-not-plain-selenium.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Why not plain Selenium? Raw Selenium is low-level by design β€” every team rebuilds the same driver factory, wait utils, retry analyzer, and reporting. Selenium Boot is that framework, maintained and tested, without hiding Selenium."
description: "Why not plain Selenium? Raw Selenium is low-level by design β€” every team rebuilds the same driver factory, wait utils, retry analyzer, and reporting."
id: why-not-plain-selenium
title: Why not plain Selenium?
sidebar_label: Why not plain Selenium?
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/why/why-not-playwright.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Why not Playwright? An honest answer: Selenium Boot does not replace Playwright. It brings Playwright's best ideas β€” accessibility-first locators, auto-waiting, web-first assertions β€” to teams staying in the Selenium / Java / Grid ecosystem."
description: "Why not Playwright? An honest answer: Selenium Boot does not replace it. It brings Playwright's best ideas to teams staying in Selenium / Java / Grid."
id: why-not-playwright
title: Why not Playwright?
sidebar_label: Why not Playwright?
Expand Down
2 changes: 1 addition & 1 deletion docs-site/docs/why/why-selenium-boot.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: "Why Selenium Boot: the Spring Boot of Selenium β€” zero setup, Playwright-inspired locators and auto-waiting, and enterprise features, without hiding Selenium. The philosophy before the API."
description: "Why Selenium Boot: the Spring Boot of Selenium β€” zero setup, Playwright-inspired locators and auto-waiting, enterprise features, without hiding Selenium."
id: why-selenium-boot
title: Why Selenium Boot?
sidebar_label: Why Selenium Boot?
Expand Down
Loading