Repository navigation
docs(recipe): read and assert on table rows with Locator.rows() (#123) - #191
Merged
shossain786 merged 14 commits intoOct 22, 2026
Merged
Conversation
Docs/locator rows core
Remove the completed Part 1 and Part 2 placeholder comments. Final verification: - Browser: 6 tests passed in a separate local TestNG project using real Chrome and HTML fixtures, covering recipe scenarios and an expected assertion failure. - Framework: mvn clean verify -Dgpg.skip=true passed with 710 tests. - Documentation: built the docs site successfully and checked the recipe locally for text and code block rendering.
Add the recipe to the Recipes sidebar and provide a 138-character SEO description. Add a core-usage heading and clarify example results. Final validation: - Contribution checks: framework verification passed with 710 tests; official consumer verification passed with 111 tests and 2 expected skips. - Recipe and documentation checks: all 8 local TestNG tests passed in real Chrome; docs build, page rendering, and sidebar navigation checked.
Docs/locator rows edge cases
5 of 10 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What & why
Adds a recipe for reading and asserting on HTML tables with
Locator.rows(), which was added in #54 but had no recipe.It covers reading all rows, finding a row by column value, asserting on a cell, and the behaviour of short rows and
<th>-only group rows. It also adds a Recipes sidebar entry and a 138-character SEO description.Closes #123
Type of change
Checklist
mvn clean verify) (mvn clean verify -Dgpg.skip; GPG signing skipped locally)@SeleniumBootApipublic APIs (or a major version bump is justified below)docs-site/) — N/A, no behaviour change; this PR is itself a docs additionNotes for reviewers
Reading rows, finding a row, and asserting on a cell were verified in a local TestNG project extending
BaseTestusing Chrome:AccountsTableTestclass shown on the page was run as-is, apart fromopen("/accounts")→open("/table.html")and one print line, against a local copy of the table in the recipe, and passed. Changing the cell to$90.00made the assertion fail withexpected [$100.00] but found [$90.00].Verify short rows and
<th>-only group rows: verified in a separate local TestNG project extendingBaseTest, using real Chrome and local HTML tables based on the recipe. All 8 tests passed together:<th>-only group rows respectively.<th>as the header when there is no<thead>; short rows and group headings together; and rejection of an incorrect expected cell value.Build the framework and run existing tests:
mvn clean verify -Dgpg.skip=truepassed all 789 tests, with no failures, errors, or skipped tests.Test against the official consumer project: the official consumer project was tested against the local framework build; 111 tests passed and 2 were intentionally skipped.
Build and preview the documentation site: the production build passed. The site was run locally to check page rendering and confirm that the Recipes sidebar entry opened the correct page.
Structure: the page follows the existing recipes, using
handle-iframes.mdas the template: the main example is a titled, complete test class, and the page ends with a Deeper reference link.Co-authored by @May-Mei6 and @Lisr-iiil.