3

Watir/Rspec を使用してループ内で複数のブラウザーを使用している場合、助けが必要です。

  • 私の目標は:
    1. Google.ca にアクセス
    2. 何かをすばやく検索する
    3. ブラウザを閉じます。
    4. 別のブラウザを使用して、手順 1 ~ 3 を繰り返します。

私はこれを Watir を使用して動作させることができますが、これを Rspec で動作させる方法がわかりません。

Watir (作業コード):

require 'watir-webdriver'
require 'rspec'

  browsers = [:ff, :chrome]
  browsers.map do |x|
  $browser = Watir::Browser.new x
  $browser.goto('http://www.google.ca')
  $browser.text_field(:id, 'gbqfq').set 'Juventus'
  $browser.send_keys :enter
  $browser.close


end #End loop

Rspec (動かない):

require 'watir-webdriver'
require 'rspec'

  browsers = [:ff, :chrome]
  browsers.map do |x|
  $browser = Watir::Browser.new x
  $browser.goto('http://www.google.ca')

  describe 'loop' do
    it 'does something' do
      $browser.text_field(:id, 'gbqfq').set 'Juventus'
      $browser.send_keys :enter
      $browser.close
    end
  end #End describe
end #End loop

上記のコードでは次のようになります。

  • Firefox を読み込みます
  • Google にアクセス
  • Chrome を読み込みます
  • Google にアクセス
  • Chrome での検索

Rspec をインクルードすると、describe意図したとおりにループが機能しないようです。

4

1 に答える 1