wttech/bobcat

Selenium WebDriver 4.0 update

mkrzyzanowski opened this issue · 0 comments

The next major Selenium version, 4.0, is around the corner and it would be nice to prepare for this update. This issue lists all the potential problematic areas that we might encounter when bumping the WebDriver version.

Discovered issues:

  • WebDriverWrapper contains following internal Selenium imports that are marked deprecated and to be removed in 4.0:
    • import org.openqa.selenium.internal.FindsByClassName;
    • import org.openqa.selenium.internal.FindsByCssSelector;
    • import org.openqa.selenium.internal.FindsById;
    • import org.openqa.selenium.internal.FindsByLinkText;
    • import org.openqa.selenium.internal.FindsByName;
    • import org.openqa.selenium.internal.FindsByTagName;
    • import org.openqa.selenium.internal.FindsByXPath;
    • this whole class is problematic in the way it renders bb-core dependent on Appium
      • removing it is a no-go for now, as lookups simply stop to work - we would need to re-implement all the above internal interfaces in this wrapper anyway (right now they are hidden under MobileDriver)
  • Appium in version >7.0 brings the latest version of Selenium with it, leading to conflicts on the classpath
  • CurrentWebElementProvider:
    • import org.openqa.selenium.internal.WrapsElement; changes to non-internal one
  • BobcatTargetLocator:
    • TargetLocator introduces new method to implement: newWindow