2

問題なく実行できる個別のテストがあります

rspec test_name_spec.rb

それぞれが含まれています@driver = Selenium::WebDriver

テストからテストまで同じウィンドウを使用して、それらを実行し、ログインしたままにする必要があります。

スイートをセットアップしましたが、以下のコードを使用して@driver=割り当てをに移動すると、 nullbefore(:all)であるためエラーが発生します。@driver

describe "district" do
  before(:all) do
    @driver = Selenium::WebDriver.for :firefox
  end 

  require File.join(File.dirname(__FILE__),  "units/set_QA_district_name_spec.rb")
  require File.join(File.dirname(__FILE__),  "units/set_file_uploads_source_location_spec.rb")
  require File.join(File.dirname(__FILE__),  "units/login_as_admin_spec.rb")
end

エラー:

1) SetQADistrictName test_set_q_a_district_name
   Failure/Error: @driver.manage.timeouts.implicit_wait = 30
   NoMethodError:
     undefined method `manage' for nil:NilClass

set_QA_district_name の内容:

require_relative "../../../spec_helper"
include RSpec::Expectations

describe "SetQADistrictName" do

  before(:each) do
    @driver = Selenium::WebDriver.for :firefox
    @base_url = "http://dmstaffing-stage.herokuapp.com/"
    @accept_next_alert = true
    @driver.manage.timeouts.implicit_wait = 30
    @verification_errors = []
  end

  after(:each) do
    #@driver.quit
    @verification_errors.should == []
  end

  it "test_set_q_a_district_name" do
    QA_run_number = "056"
  end

  def element_present?(how, what)
    @driver.find_element(how, what)
    true
  rescue Selenium::WebDriver::Error::NoSuchElementError
    false
  end

  def verify(&blk)
    yield
  rescue ExpectationNotMetError => ex
    @verification_errors << ex
  end

  def close_alert_and_get_its_text(how, what)
    alert = @driver.switch_to().alert()
    if (@accept_next_alert) then
      alert.accept()
    else
      alert.dismiss()
    end
    alert.text
  ensure
    @accept_next_alert = true
  end
end
4

1 に答える 1