2011-12-08 5 views
0

私はC#でオートメーション用にSelenium webdriverを使用しています。今、私はWebdriverが新しいIEウィンドウのポップアップのクリックを続けるようにしたい。switchTO().Window( "windowname")が使用されていると、ウィンドウが見つかりません。

[注: - 子供IEは完全に新しい.aspxページの後に表示するページのソースを実行して、チェックその私のウィンドウ名を右クリックしているポップアップし、それがwindow.open("../Reports/MidWayReport.aspx");ある]私は以下しようとしたボタンをクリックした後

コード。

webDriver.SwithTO().Window("windowname"); 

それは窓なしで例外が見つからない」生成している

+0

コードはOKと思われます。上記のコードは動作するはずです。ウィンドウの名前は正しいですか? –

答えて

0

それはおそらくタイミングの問題だ - 。。ウィンドウに切り替えしようとする前に数秒を待ってみてください

+0

Np私は待ち時間を増やしましたが、タイミング問題ではありません –

0

それはタイミングの問題のいずれかですデフォルトでは、特に指定されていない新しいウィンドウには_Blankという名前が付いていると思いますが、それは複数のブラウザ間で見たときから数年経ってから変更されている可能性があります。簡単な解決策は、ウィンドウに名前を付けるだけです。

window.open("../Reports/MidWayReport.aspx", "MyWindowName"); 

次にあなたがこの

webDriver.SwitchTo().Window("MyWindowName"); 

これはあなたが私が提供JavaScriptでこれをやっているので、この

<a href="http://www.mysite.com" target="MyNewWindowName">Open Window</a> 

のようなポップアップを開くリンクが設定することに使用されるような何かを行うことができます最初にそれを行う方法。ここに説明するリンクがあります:http://www.infimum.dk/HTML/JSwindows.html

関連する問題