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

(docs): Using WebDriverIO with GNOME's Epiphany and WPE's Cog browsers #11899

Open
christian-bromann opened this issue Dec 18, 2023 Discussed in #11880 · 9 comments
Open

(docs): Using WebDriverIO with GNOME's Epiphany and WPE's Cog browsers #11899

christian-bromann opened this issue Dec 18, 2023 Discussed in #11880 · 9 comments
Labels
good first pick a reasonable task to start getting familiar with the code base help wanted Issues that are free to take by anyone interested

Comments

@christian-bromann
Copy link
Member

Discussed in #11880

Originally posted by lauromoura December 17, 2023
Hi, does WebdriverIO support using third-party browsers other than Chrome/Edge/Safari/Firefox? The browsers in question are based on WebKit, like Safari (e.g. GNOME's Epiphany and WPE's Cog).

I tried playing with the capabilities in the manual mode but looks like browserName must be one of these 4 (or closely related), with WebDriverIO refusing to start remote() if it's different. If I try using safari but changing other caps like binaries paths, the wrong browserName causes the capability negotiation to fail with the third-party browser service.

Before testing WebDriverIO, I've been using Selenium's python bindings, through its RemoteWebDriver classes, with the extra capabilities specific to the tested browsers like command line arguments. Does WebDriverIO have something similar to the RemoteWebDriver?

@christian-bromann christian-bromann added help wanted Issues that are free to take by anyone interested good first pick a reasonable task to start getting familiar with the code base labels Dec 18, 2023
@wdio-bot
Copy link
Contributor

Thanks for reporting!

We greatly appreciate any contributions that help resolve the bug. While we understand that active contributors have their own priorities, we kindly request your assistance if you rely on this bug being fixed. We encourage you to take a look at our contribution guidelines or join our friendly Discord development server, where you can ask any questions you may have. Thank you for your support, and cheers!

@Ali7040
Copy link

Ali7040 commented Dec 28, 2023

Assign this to me, and I will try to fix it.

@christian-bromann
Copy link
Member Author

@Ali7040 any updates or questions?

@Ali7040
Copy link

Ali7040 commented Jan 13, 2024

Screenshot 2024-01-13 at 12 48 21 PM @christian-bromann I am facing this problem, and because of this, I can't test other browsers.

@Ali7040
Copy link

Ali7040 commented Jan 13, 2024

And on WebdriverIO, we can only run driver-based browsers. For Linux browsers like GNOME and WPE's cog, there is no driver. I have searched for it, so I don't think we can run Linux browsers, and there is no documentation available for them.

@christian-bromann
Copy link
Member Author

I am facing this problem, and because of this, I can't test other browsers.

Please make sure you run the recommended Node.js version for development which is v18.12.1.

For Linux browsers like GNOME and WPE's cog, there is no driver.

Are these browser based on an engine like Chromium or Gecko? Chances are that you can use these drivers then.

@Ali7040
Copy link

Ali7040 commented Jan 14, 2024

Please make sure you run the recommended Node.js version for development which is v18.12.1.

My node version is the same.
Screenshot 2024-01-14 at 12 44 28 PM

Are these browsers based on an engine like Chromium or Gecko? Chances are that you can use these drivers then.

GNOME Web (Epiphany) uses the WebKitGTK rendering engine, and it is not based on either Chromium or Gecko.

@christian-bromann
Copy link
Member Author

GNOME Web (Epiphany) uses the WebKitGTK rendering engine

It seems there is a driver for that here: https://packages.debian.org/stable/web/webkit2gtk-driver. I would suggest to build a project like edgedriver with the same interface to help download the binaries in the same (lazyloading) way and then we can integrate it into WebdriverIO.

For WPE's Cog there is also a driver: https://manpages.ubuntu.com/manpages/focal/en/man1/WPEWebDriver.1.html, same applies here. I don't have a Linux machine, so I won't be able to work on this but it would be awesome to have support.

@christian-bromann
Copy link
Member Author

@Ali7040 let me know if you are still interested in working on this. I am happy to re-assign you.

@christian-bromann christian-bromann changed the title (docs): Using WebDriverIO with third-party browsers (docs): Using WebDriverIO with GNOME's Epiphany and WPE's Cog browsers Jan 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first pick a reasonable task to start getting familiar with the code base help wanted Issues that are free to take by anyone interested
Projects
None yet
Development

No branches or pull requests

3 participants