-
Notifications
You must be signed in to change notification settings - Fork 22.1k
Deprecate poltergeist and webkit driver registration. Add cuprite.
#42790
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
Deprecate poltergeist and webkit driver registration. Add cuprite.
#42790
Conversation
|
I think we should deprecate capybara-webkit and poltergeist in 7.0 before removing them on 7.1 since some users might still depending on them. We can add Cuprite and make it the default/recommended meanwhile. |
|
@guilleiguaran Thank you for your kind advise.:)
I see. This is really a breaking change. I will change the codes to show deperecation warning, instead of deleting them. I also found a problem in adding |
|
@YusukeIwaki thanks for updating this can you check the CI failures? |
…m testing. Add `cuprite` instead. Poltergeist and capybara-webkit are already not maintained. * https://github.com/teampoltergeist/poltergeist * https://github.com/thoughtbot/capybara-webkit Most users actually use Selenium with Headless Chrome in these years, and it is not encouraged to use poltergeist or capybara-webkit at this moment. Cuprite is a good alternative driver to Poltergeist: https://evilmartians.com/chronicles/system-of-a-test-setting-up-end-to-end-rails-testing Not only removing deprecated Capybara drivers, also introducing Cuprite.
poltergeist and webkit driver registration. Add cuprite instead.poltergeist and webkit driver registration. Add cuprite.
|
@guilleiguaran Hi, sorry for my mistake, I fixed the problem and rebased. |
|
I realise the writing has been on the wall for capybara-webkit some time now, but just to point out we still happily use capybara-webkit every day, simply because it runs system tests about 3 to 4 times faster than headless Chrome. It's a bit painful to install the required old Qt version on Big Sur, but the difference between a 2 minute test suite or a 7 minute one is a considerable quality of life difference for development. Headless Chrome has steadily improved functionality, but I don't think anyone is working on closing that >300% performance gap. I realise everyone uses a CI server nowadays, but faster tests make it much easier for programmers to practice good testing hygiene. |
|
Hi @Fjan, thank you for your feedback. capybara-webkit users can still use it even after Rails remove Capybara::WebKit::Driver.new(app, .......)And the main purpose of this Pull request is dropping official support for deprecated Capybara drivers. |
Summary
Poltergeist and capybara-webkit are already not maintained.
I just happend to find the usages of them here: https://github.com/rails/rails/blob/main/actionpack/lib/action_dispatch/system_testing/driver.rb
Most users actually use Selenium with Headless Chrome in these years, and it is not encouraged to use poltergeist or capybara-webkit at this moment.
Cuprite is a good alternative driver to Poltergeist: https://evilmartians.com/chronicles/system-of-a-test-setting-up-end-to-end-rails-testing
Some guide descriptions of Poltergeist would be better to replace into Cuprite.
Other Information