問題タブ [watir]
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 - 複数のターゲットに対して rspec を実行する
Watir を使用して web アプリケーションに対して rspec テストを作成しましたが、正常に動作しています。ただし、別のドメイン名で実行されている Web アプリケーションに対してこのテストを実行できるようにしたいと考えています。
私の最初の考えは、スクリプト内で変数を設定するためにコマンド ラインで値を spec に渡すことができるということでしたが、これを行う簡単な方法がわかりません。次に考えたのは、一連のドメインをスクリプトに追加して、すべてのドメインをテストする必要があるかもしれないということでした。ただし、常にすべてのドメインをテストするわけではありません。また、サイトを追加および削除すると、ドメインは常に変化します。テストする。
必要なターゲットを選択できるようにするためのオプションは何ですか?
testing - テスト目的でクラスに存在することに関するWatirの質問
クリックしたラジオボタンに応じて変化するボタンがページにあります。ボタンには、同じIDで同じテキストがありますが、クラスは異なります。ラジオに応じて2つの異なるボタンが存在するかどうかをテストするにはどうすればよいですか。
最初のボタンの代わりに2番目のボタンが表示されるかどうかをテストするにはどうすればよいですか。私は次のようなものを使用しましたbrowser.link(:text, 'Submit').exist?
しかし、これは機能しません。何があってもtrueを返すからです。ありがとう
編集:私は周りを見回していて、xpathでいくつかのものを見つけましたか?これを試してみましたが、うまくいかないようです。
私が前に言及するのを忘れたかもしれない重要なことは、クラスのオンとオフを使用するが異なるIDを持つボタンの2番目のセットもあるということです。だから私はクラスを具体的にテストする必要があり、IDは送信します。次に、クラスがオフになり、IDが送信されます。ありがとう
windows - Watir::IE.attach(:title,/x/) が Win 7 IE8 で正しく動作しない
システム: Window 7 Internet Explorer 8 Ruby 1.8 Watir 1.6.5
ブラウザー ウィンドウを手動で開いてから、2 つ目のブラウザー ウィンドウを開くサイトにアクセスし、Watir::IE.attach メソッドを使用して 2 つ目のブラウザー ウィンドウを見つけると、すべて正常に動作します。問題は、コマンド Watir::IE.new を使用して最初の Internet Explorer ウィンドウを開き、次に 2 つ目のブラウザー ウィンドウを開くサイトにアクセスした場合です。Watir::IE.attach を使用して 2 番目のブラウザー ウィンドウを見つけると、次のようになります: Watir::Exception::NoMatchingWindowFoundException: Unable to location a window with title of (?-mix:x) from /ie-class.rb: 297:/ie-class.rb の「attach_browser_window」:149:/ie-class.rb の「_attach_init」:143:(irb) の「attach」:15
誰かがこの問題に遭遇し、解決策を開発しましたか?
私はもう少し調査を行い、管理者権限でスクリプトを実行しています。IE8 を管理者として開いてから、新しいウィンドウを開こうとしています。管理者として IE8 を手動で開こうとした後、ブラウザーから新しいウィンドウを開いて、watir で attach コマンドを実行すると、watir で最初のウィンドウを作成した場合と同じエラーが発生しました。
スクリプトを管理者として実行できるようにしたいです。
watir コマンドを手動で実行し、スクリプトで実行しようとしました。
======================
「ルビジェム」が必要
'watir' が必要
ie = Watir::IE.start(" http://www.quackit.com/html/codes/html_open_link_in_new_window.cfm ")
ie.link(:text,"HTML Help").click
ie2 = Watir::IE.attach(:title,/Help/)
======================
ruby - watir と IE でファイルをアップロードするには?
アップロード フォームをテストするための watir スクリプトを作成しています。
しかし、スクリプトはハードドライブからアップロードするファイルを自動的に選択しません。
代わりに、IE はファイル選択ダイアログを開いたまま停止します。ダイアログでアップロードするファイルを手動で選択し、[OK] をクリックするとすぐに、watir は必要に応じて続行します。なんで止まるのかしら。
これは私のwatirスクリプトです:
このページからコードを取得しました: http://wiki.openqa.org/display/WTR/File+Uploads
これは次の形式です。
このマニュアルhttp://svn.openqa.org/svn/watir/trunk/watir/unittests/filefield_test.rbも見つけました。テストには IE 6 と IE 7 を使用しています。
編集:ここに簡単な例をアップロードしました (私のマシンの c:\testing\ にある 3 つのファイル、cmd ファイルを開始するだけです):
http://dl.dropbox.com/u/1508092/testing.rar
3 つの異なるマシン (すべての Windows 2003、2x IE 6 および 1x IE 7) で失敗します。また、スクリプト c:\ruby\lib\ruby\gems\1.8\gems\watir-1.6.5\lib\watir\input_elements.rb のスリープ時間を 1 秒から 5 秒に変更しました。彼の答えで:
ここで停止します (一度、ファイル ダイアログのディレクトリに手動で移動したことに注意してください。その時点から、IE は常にこのディレクトリで開いているダイアログを表示しますが、スクリプトがディレクトリを選択したことを意味するわけではありません。これは、IE が常に最後のディレクトリを表示することを意味します):
ここで停止します http://dl.dropbox.com/u/1508092/upload-dialog.JPG
編集:
ole32 コードが英語のタイトルを探していることがわかりました。
POPUP_TITLES = ['ファイルを選択', 'アップロードするファイルを選択']
IE 7英語版をインストールしました。まだ成功していません。しかし、input_elements.rb はウィンドウ タイトルを検索するため、ローカライズと関係があると思います。なぜ今でも失敗するのだろうか。これはinput_elements.rbのコードです:
新しい IE のタイトルに「ファイルを選択してください」というテキストが表示されるようになりました。ここでローカライズまたは変更する必要があるものは他にありますか? スクリーンショットを英語版に更新しました。
watir - watir の要素の ID または名前を取得するにはどうすればよいですか?
Watir はページ上のテキストを見つけることができます。
しかし、「テキスト」しか知らない場合、スパンの名前またはIDを取得するにはどうすればよいですか
このようなものがwatireに存在しますか?
html - watirでJavaScriptで追加したラジオボタンが選択できない
これは、後で jQuery を使用してページに追加されました。
このコード:
設定しませんが、エラー メッセージを返します。
watir は後で追加されたラジオ ボタンも検出しますか?
これは Windows 32 ビット XP SP 3、IE 7、watir 1.6.5、ruby 1.8.6 です。
watir - watir で「ログイン」をテストする
私はwatirを使い始めています。アプリケーションにログインするためのテスト スクリプトを作成する必要があります。
以下のコードは、ページのスクリプトです。
ボタンとリンクの例をいくつか見ましたが、情報を "送信"("onclick=SubmitForm() type=button value="Sign In") する方法がわかりません。
watir - watir の browser.text.include はありますか? 非表示の div 内のテキストをカウントしますか? もしそうなら、表示されているテキストだけを検索する方法は?
watir の browser.text.include はありますか? 非表示の div 内のテキストをカウントしますか? もしそうなら、表示されているテキストだけを検索する方法は?
最初からすべての指示を html に入れ、jQuery を使用して関連する部分を表示および非表示にします。
watir のウェイターを使用して、表示されているテキストのみを待機するにはどうすればよいですか?
私の問題は、特定のテキストを表示する前であっても、ウェイターが常に true を返すことです。
ajax - Watir: カスタム ポップアップを開くには、要素をダブルクリックする必要があります
私はWATIRの初心者です。私が直面している問題は、テストしているアプリケーションのサムネイル (Windows アイコンなど) がページに配置されており、それをダブルクリックする必要があることです。そうすると、カスタム ポップアップ (javascript で実装された ajax ポップアップ) が開きます。fire_event("ondblclick") が機能しません。「クリック」も2回試しましたが、それも役に立ちません。これを処理する他の方法はありますか?あなたの助けは非常に高く評価されています。
2010 年 7 月 6 日追加:
解決しましたが、別のクエリがあります。
以下は、「@ie.div(:class,'GridElementInlineIE').fire_event('ondblclick')」を使用して解決できた HTML です。
次に、このアイテムをダブルクリックする必要があります (以下のコード)。ただし、要素が識別されている (黄色で強調表示されている) 場合でも、ダブルクリックは機能しません。「@ie.div(:class,'gridViewItem').fire_event('ondblclick')」を試しています。また、while ループとクリック 2 回のオプションを試してみましたが、効果がありませんでした。Ruby186-27_rc2 で Watir 1.6 を使用しています。
ruby - Watirはruby1.9.1で動作しますか?
.rbプログラムは次のとおりです。
2行目は、「msvcrt-ruby18.dll がコンピュータにないため、プログラムを開始できません!」というエラーをトリガーします。
私はwin32で1.9.1p378を使用しています
どうすればこれを修正できますか?ご清聴ありがとうございました。