5

おはようございます、

私はwatirgridをセットアップしていて、部分的に成功していますが、すべてのプロバイダーを私のrubyスクリプトで動作させるのに問題があります。

私のMacでは、コマンドラインから次のコマンドを使用してプロバイダーをセットアップしました。

provider -d safariwatir -c druby://192.168.0.1:11235

次に、Ubuntuマシンで、別のプロバイダーをセットアップします。

provider -d webdriver -c druby://192.168.0.1:11235

次のルビーコードを使用すると、次のようになります。

require 'rubgygems'
require 'watirgrid'

Watir::Grid.control(:controller_uri => 'druby://192.168.0.1:11235', :browser_type => 'firefox'_ do |browser, id|
    puts "Browser id is #{i}"
    browser.goto("http://www.google.co.uk")
    puts browser.title
end

この種の機能は、両方のブラウザが起動して選択したページに移動するという点で機能します。ただし、グリッド内のすべてのブラウザー(WindowsではIE、MacではFFなど)をターゲットにするため、ブラウザーの種類として「firefox」を指定する必要はありません。そこで、Grid.controlコマンドから「firefox」を削除しようとすると、「Safari」の起動中に、推測している実行内容がわからないため、2番目のブラウザからエラーが発生します。

(申し訳ありませんが、エラーを再現してここに投稿するために自分のマシンにいるわけではありません。可能な場合は、これで投稿を更新します)。

-bスイッチを使用してWebドライバープロバイダーを起動しようとしました。

provider -d webdrive -c druby://192.168.0.1:11235 -b firefox

次に、ブラウザの種類を指定せずに同じルビーコードを再度実行しますが、同じエラーが発生します。

ここで何かが足りませんか?

複数のブラウザを備えたマシンで、異なるポートだけで複数のプロバイダーを実行するのは通常のことだと思います。

私はこれである程度の成功を収めました。分離されたマシンでChromeをWebドライバーと連携させました。これは、私のWeb開発に本当に役立つと思います。この問題を乗り越える必要があるので、助けてくれてありがとう。これがすべて理にかなっていることを願っています。

ありがとう、ラッセル

4

2 に答える 2

2

興味深いユースケース、私はそれについて考えていませんでした(異なるブラウザーと異なるドライバータイプを備えた同じマシン上で)

最新のビルドをご覧ください

gem install watirgrid --pre

ここにrspecの例があります: https ://github.com/90kts/watirgrid/blob/master/spec/grid_mixed_spec.rb

同じマシンで複数のプロバイダーを起動する場合は、-p引数を使用してunqiueポートでプロバイダーが分離されていることを確認してください。また、バグを修正して、-b browser_typeを指定すると、Watir :: Grid paramsで明示的に定義されていない場合、デフォルトでそのブラウザータイプに設定されるようにしました。

どうやって行くのか教えてください...

于 2011-06-05T03:55:59.207 に答える
0

WebdriverがSafariのサポートを追加したので、これは少し簡単かもしれません

詳細については、こちらをご覧ください:http ://watirmelon.com/2012/04/17/using-watir-webdriver-with-safari-at-last/

于 2012-04-18T18:40:35.650 に答える