Watir/Rspec を使用してループ内で複数のブラウザーを使用している場合、助けが必要です。
- 私の目標は:
- Google.ca にアクセス
- 何かをすばやく検索する
- ブラウザを閉じます。
- 別のブラウザを使用して、手順 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
意図したとおりにループが機能しないようです。