Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Selenium 4 #400

Merged
merged 23 commits into from
Feb 13, 2022
Merged

Selenium 4 #400

merged 23 commits into from
Feb 13, 2022

Conversation

tcnh
Copy link
Contributor

@tcnh tcnh commented Feb 6, 2022

New Selenium 4 PR. (continues on base of #355)

Selenium 4.1.2 version
Relative locators
Shadow DOM access by using existing searchcontexts in Chromium 96+
DevTools Browsertest as a sample
ChromiumOptions for Chrome- and Edgedriver, with examples wiki page

Includes acceptance tests for shadowdom and relative locators

Copy link
Owner

@fhoeben fhoeben left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Haven't gone in full details yet, but looks pretty good.

Some global thoughts:

  • should we add some documentation (references) to the top-level examples.BrowserTest.wiki for the new commands/features?
  • the relative locators add a lot of new methods to the (already too big) BrowserTest class. And the require technical selectors (which you very nicely explicitly documented). Can we do something about that? I'm thinking whether it would be bad to have them in a separate subclass (I like that they are available, but think I would prefer tests that do not (need to) use them). Do you have any thoughts?

pom.xml Outdated Show resolved Hide resolved
…owserTest wiki, removed artefact of old selenium4 example suite
@tcnh
Copy link
Contributor Author

tcnh commented Feb 6, 2022

Haven't gone in full details yet, but looks pretty good.

Some global thoughts:

  • should we add some documentation (references) to the top-level examples.BrowserTest.wiki for the new commands/features?

I added them to the commands table (value of <> above/below/leftof/right of/near was missing, is added now)
I feel giving them much more acknowledgement would be to much credit for methods that should relatively not be used very often?

  • the relative locators add a lot of new methods to the (already too big) BrowserTest class. And the require technical selectors (which you very nicely explicitly documented). Can we do something about that? I'm thinking whether it would be bad to have them in a separate subclass (I like that they are available, but think I would prefer tests that do not (need to) use them). Do you have any thoughts?

I agree (see above) that these are a bit of niche. On the other hand this is the most prominent addition to Selenium 4 for most end-users and I also believe there are a whole lot of methods in BrowserTest that are only used in specific use cases, so these are not that different. Splitting browsertest into multiple layers (of complexity/technology orientation/etc) might be a good idea, but as I mentioned, I believe we could move out a whole bunch of other methods and settings, too.

@fhoeben
Copy link
Owner

fhoeben commented Feb 9, 2022

Maybe just a few links in the text above the table with BrowserTest commands to link to the new sample pages?

@fhoeben fhoeben merged commit 4057cb4 into fhoeben:master Feb 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants