水豚使用 Selenium webdriver 未定义的方法“访问”#<RSpec::ExampleGroups

Capybara using Selenium webdriver undefined method `visit' for #<RSpec::ExampleGroups

以下是我的设置 只有三个文件开始。无文件夹结构

宝石文件

gem 'capybara'
gem 'selenium-webdriver'

spec_helper.rb

require 'capybara/rspec'
require "selenium/webdriver"

Capybara.register_driver :chrome do |app|
  Capybara::Selenium::Driver.new(app, browser: :chrome)
end

Capybara.register_driver :headless_chrome do |app|
  capabilities = Selenium::WebDriver::Remote::Capabilities.chrome(
    chromeOptions: { args: %w(headless disable-gpu) }
  )

  Capybara::Selenium::Driver.new app,
    browser: :chrome,
    desired_capabilities: capabilities
end

Capybara.javascript_driver = :headless_chrome

run.rb

require_relative 'spec_helper'
describe "test process" do
    it "checks google" do
        visit("www.google.com")
        puts "LAUNCHED"
    end
end

测试新手。任何帮助将不胜感激。

我运行它使用

rspec run.rb

默认情况下,Capybaras 方法仅包含在 RSpec 类型的测试中:feature 和 :system - https://github.com/teamcapybara/capybara/blob/master/lib/capybara/rspec.rb#L10

用正确的类型标记您的测试,方法将可用

describe 'test proces', type: :feature do