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

refactor!: Update to work with Selenium 4 (with element factory) #469

Merged
merged 23 commits into from
Oct 15, 2021
Merged

refactor!: Update to work with Selenium 4 (with element factory) #469

merged 23 commits into from
Oct 15, 2021

Conversation

TroyWalshProf
Copy link
Contributor

Change list

Transition off Remote elements and drivers
Stop using capabilities, instead leverage the base DriverOptions functionality
Transition from AddAdditionalCapability to AddAdditionalOption
Add 'App' as a known capability
Tag driver options so they are W3C compliant
Transition from CommandInfo to HttpCommandInfo

Types of changes

What types of changes are you proposing/introducing to .NET client?
Put an x in the boxes that apply

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • New feature (non-breaking change which adds value to the project)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Documentation

  • Have you proposed a file change/ PR with appium to update documentation?

This can be done by navigating to the documentation section on http://appium.io selecting the appropriate command/endpoint and clicking the 'Edit this doc' link to update the C# example

Integration tests

  • Have you provided integration tests to pass against the beta version of appium? (for Bugfix or New feature)

Details

Update to work with Selenium 4/to be W3C compliant


public new IReadOnlyCollection<W> FindElements(string selector, string value) =>
ConvertToExtendedWebElementCollection<W>(base.FindElements(selector, value));

public new W FindElementByClassName(string className) =>
(W) base.FindElement(MobileSelector.ClassName, className);
public W FindElementByClassName(string className) =>

Choose a reason for hiding this comment

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

these helpers actually got removed from the java client. Perhaps you could sync with @valfirst on this topic?

Copy link
Contributor Author

@TroyWalshProf TroyWalshProf Oct 14, 2021

Choose a reason for hiding this comment

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

TBH I would love for all these helpers to go away, but I am guessing I am in the minority

Copy link
Collaborator

Choose a reason for hiding this comment

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

Please feel free to remove them. They're inherited

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@akinsolb, they are no longer inherited and simply pulling them will break a lot of tests.
I think we should look at this more holistically but in a sperate PR.
AKA would like to get what we have released as a Alpha or Beta today if possible.

Choose a reason for hiding this comment

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

we are anyway doing a major release, so it's fine to do such breaking change

Copy link

@mykola-mokhnach mykola-mokhnach left a comment

Choose a reason for hiding this comment

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

LGTM, but please sync the updates with java client first. I'd like all contributors to be on track with the recent changes and features as well as removals and deprecations.

@mykola-mokhnach
Copy link

Also, it looks like tests need some love.

@laolubenson
Copy link
Collaborator

As discussed earlier , merging this into a release branch today

@laolubenson laolubenson changed the base branch from master to release/4.0.0 October 15, 2021 11:18
@laolubenson laolubenson merged commit fa3c27c into appium:release/4.0.0 Oct 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants