In TraversableElement->findField(), provide a way to find the first visible item rather than the first item.
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 1.6k
- Forks
- 286
- PR merge metrics
- No merged PRs in 30d
Description
TraversableElement->fillField(), clickLink(), etc., use findField(), findLink(), etc. to know what to click or fill.
Might it not be better to define new find functions which find only visible elements? For example, in addition to findLink(), a findVisibleLink() would cycle through all links and find the first visible one.
In turn, clickLink() would use findVisibleLink() rather than findLink() to know what to click.
Take the following use case: a website contains several links "xyz", but only one is visible at any given time. With the current method, if the first xyz is invisible, clickLink(xyz) fails. With the proposed method, the visible element could be clicked.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the TraversableElement->findField(), findLink(), fillField(), and clickLink() entry points named in the issue. Inspect how matching elements and visibility are currently handled, then determine the affected find and interaction methods. Done means matching interactions select the first visible item without breaking existing behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- testing-qa, web-dev
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100