問題タブ [watir-webdriver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 非rootユーザーとしてrubyからXvfb内でSelenium::WebDriver::Firefoxを実行している
ルビースクリプトを使用してヘッドレステストを実行しようとしています。基本的に、ディスプレイ:1でXvfbを実行してから、Watir::Browser.new(:firefox)
watir-webdriverを使用して起動します。
これは、スクリプトをrootとして実行する場合にうまく機能します。つまり、x11vncを実行して、スクリプトがブラウザーを実行し、ブラウザーと対話するのを見ることができます。
問題は、Railsアプリからこのrubyスクリプトを呼び出すことができる必要があり、rootとして実行しないようにする必要があることです...通常のユーザーとしてコマンドラインからスクリプトを実行しようとすると、Xvfbが1で起動します。いつものように、しかしWatirはブラウザを起動しません...それは最終的に60秒後にタイムアウトします。VNC経由で接続すると、マウスカーソルで黒い画面が表示されます。
コマンドラインからすべてを実行できます。Xvfbを起動firefox --display=:1
してから起動するとブラウザが起動するので、Seleniumの問題である必要があります。
簡単に言うと、Selenium / Webdriverは、スクリプトをrootとして実行しない限り、Xvfb内でブラウザーを起動することを拒否します。
google-chrome - アタッチは webdriver でサポートされていないため、watir-webdriver の watir::ie.attach に代わるものはありますか
Webkit 対応のブラウザー (Google Chrome、Safari) でのみレンダリングされる Web サイトがあります。Windows 7 を使用しているため、Google Chrome を使用しています。
同じことを自動化するために Watir-WebDriver を使用しています。
問題: ブラウザ ウィンドウのボタンをクリックすると、別のウィンドウが起動し、クリック後のコンテンツが新しいブラウザ ウィンドウにレンダリングされます。テストを続行するには、この新しいブラウザ ウィンドウを識別できる方法が必要です。さまざまなフォーラムを読んでいますが、特定の回答/解決策が得られません。
Q: Watir-Webdriver では attach がサポートされていないため、watir-webdriver の watir::ie.attach に代わるものはありますか?
サンプルコード:
watir - watir-webdriver で CTRL+Click をシミュレートするには?
ctrl keydown と ctrl keyup をシミュレートしたい。
私のユースケースは次のとおりです。
ユーザーは、CTRL キーを押して目的の行をクリックすることにより、リスト (テーブルを使用して構築) から複数の要素を選択できます。CTRL キーが離されると、AJAX 呼び出しが行われます。
これをシミュレートするには、watir テストが必要です。これどうやってするの ?何か案は ?Linuxで動作するソリューションが必要です
どうもありがとう。
.htaccess - htaccess login/pwd を watir webdriver で渡す
キュウリのシナリオのステップ定義を書いています。ただし、テスト Web サイトは htaccess ログイン/パスワードで保護されています。
HTMLから要素を取得する方法を知っています。しかし、どうすれば watir webdriver でこのハードルをクリアできるのでしょうか?
実際に自分で答えを見つけました:
watir - WATIR を使用してテーブル TH 要素にアクセスする
特定の列がテーブルに表示されているかどうかを確認する必要があります。各列には、一意の ID を持つ TH ヘッダーがあります。テーブル内の TH 要素の存在を確認する最良の方法は何ですか?
テーブルコードの例を次に示します。
ティア
watir - watir-webdriverを使用して:textを使用してLI要素を検索する
jQueryメニュー要素を見つけてクリックしようとしています。メニューは、多数のLI要素を含む複数のUL要素として定義されています。
私が使用した標準のWATIRで、Mac10.5でFirefox3.6.17を使用します。
また
メニュー項目をクリックしますが、watir-webdriver(0.2.3)を使用すると、LI要素が見つからないと報告されます。:classを使用して、含まれているDIVとLIのインスタンスを見つけることができますが。
以下にメニューHTMLの例を添付しましたが、LIアイテムを見つけるための信頼できる方法を誰かが提案できますか?
ruby - ポップUIボタンにアクセスするにはどうすればよいですか?
オブジェクトの削除によってトリガーされるポップアップ ボタンがあります。ボタンが見つかった場合、どうすればクリックできますか。
私は次のようにxpathを使用しました:
コード スニペットを次に示します。
前もって感謝します。
ruby - watir-webdriverがテーブルサイズの行と列の数をチェックする
WATIRスクリプトをWATIRWebドライバーを使用するように変換するプロセスを開始しています。HTMLテーブルのサイズ(行と列)をチェックするためにWATIRスクリプトで使用していたテーブルメソッドがいくつかあります。
これらのメソッドはWebdriverには存在しないため、同じチェックを行うための良い方法を探しています。
行の場合、これはrow_countメソッドと同じ結果をもたらすようです
テーブルの列数については、テーブルを文字列の配列に変換して最初の行の長さを取得しようとしましたが、文字列配列への変換には時間がかかります。
誰かがテーブルサイズを取得するためのより良い/より速い方法を提案できますか?
watir - Watirを使用してdivの下のテキストフィールドに値を挿入する方法
以前set
は、div の下のテキスト フィールドに値を挿入していました。
以下は、私が成功せずに使用したアプローチです。これが、要素を特定できた唯一の方法です。テキストフィールドを名前で識別しようとすると、認識されませんでした。
次のエラーが表示されました。
これはHTMLです:
評価名:
google-chrome - Chromeドライバーをインストールする
Win732ビットOS用のChromeドライバーをダウンロードしました。.exeファイルを実行すると、コマンドプロンプトが開き、「Started ChromeDriver port = 9515 」というメッセージが表示されます。このコードを実行しようとしましたが、chromeが開きません...
/li>
次のフォルダーには、bridge.rbとservice.rbの2つのファイルしかありません。C:\ Ruby187 \ lib \ ruby \ gems \ 1.8 \ gems \ selenium-webdriver-0.2.0 \ lib \ selenium \ webdriver\chrome また、最新のchromeをインストールしました12.0.742.53
質問2:このコードはWebドライバーのブラウザーを最大化しませんbrowser.maximize