在 Rails 5.2 中,如何配置我的系统测试以使用 selenium 远程服务器?

In Rails 5.2 how can I configure my system tests to use a selenium remote server?

我当前的开发设置是使用 Windows 10 和 WSL(Windows Linux 的子系统)和 Rails 5.2 应用程序。几天来我一直在尝试执行我的系统测试,我相信我已经发现使用 WSL 执行此操作的唯一方法是使用 运行 on Windows 10 的远程服务器。我已按照本指南 here 进行操作,但仍然无法正常工作。我猜我的 application_system_test_case.rb 文件不正确,我正在寻找可以帮助我更正它的人。

目前在尝试 运行 系统测试时出现以下错误。

错误:

daveomcd@mcdonald-PC9020:~/rails_projects/haystack_scout$ rails test test/system/users_test.rb
Running via Spring preloader in process 960
/home/daveomcd/.rvm/gems/ruby-2.5.1/gems/spring-2.0.2/lib/spring/application.rb:185: warning: Insecure world writable dir /home/daveomcd/.rvm/rubies/ruby-2.5.1 in PATH, mode 040777
Run options: --seed 10702

# Running:

E

Error:
UsersTest#test_visiting_the_index:
ArgumentError: unknown driver: :selenium_remote_chrome
    test/system/users_test.rb:8:in `block in <class:UsersTest>'

Error:
UsersTest#test_visiting_the_index:
ArgumentError: unknown driver: :selenium_remote_chrome



bin/rails test test/system/users_test.rb:7



Finished in 0.134354s, 7.4430 runs/s, 0.0000 assertions/s.
1 runs, 0 assertions, 0 failures, 1 errors, 0 skips

所以我发现我可以 运行 在 Windows 10 中使用带有 headless_chrome 的 WSL 进行系统测试。然而,试图让 chromedriverselenium-webdriver 的版本很好地协同工作是一件很困难的事情。

我目前正在使用 chromedriver 2.40,仅 运行 chromedriver-update "2.40"。 根据这个 Github 问题 link,我还在我的 gemfile 中使用了以下内容。 gem 'selenium-webdriver', git: 'https://github.com/SeleniumHQ/selenium.git', ref: '36e4f3e25e1a1a00335a24e3c918d74bb370a1e7'

根据问题页面,一旦他们也推出修复,我似乎可以在几天内尝试。