C#でWebdriverの最新バージョンを使用してウィンドウを切り替えようとしているときに動かなくなりました。Webdriver、CSharp、C# - ウィンドウを切り替えることができません。
私は基本的なウィンドウを持っています。ボタンをクリックすると、新しいウィンドウが開きます。
このボタンのターゲットコードは次のとおりです。私はあなたが上から見ることができるように、新しいウィンドウに
string BaseWindow = _driver.CurrentWindowHandle;
ReadOnlyCollection<string> handles = _driver.WindowHandles;
foreach (string handle in handles)
{
if (handle != BaseWindow)
{
_driver.SwitchTo().Window(handle).Title.Equals("DisplayPage");
}
}
}
を対象に下記のコードを使用しています
window.open(uri, "DisplayPage", " width=1200, scrollbars=yes , resizable = yes , toolbar = no , menubar = no");
は、私はベースウィンドウからターゲットタイトルを使用してウィンドウに切り替えています。これはうまくいかないようです。私は、まだこの
string BaseWindow = _driver.CurrentWindowHandle;
ReadOnlyCollection<string> handles = _driver.WindowHandles;
foreach (string handle in handles)
{
if (handle != BaseWindow)
{
_driver.SwitchTo().Window(handle).Title.Equals("Display - Transaction Page");
}
}
}
運にコードを修正 - 「トランザクションのページ表示」
が、私はその後、開いたウィンドウのタイトルが異なっていたことに気づいた、それはでした。
興味深いことに、「ウィンドウが見つかりません」というエラーは表示されません。
問題は、新しく開いたページの要素をクリックしようとすると、NoSuchElementExceptionが発生します。これは、新しく開いたウィンドウがターゲットにされていないことを意味します。
アイデア?
よろしく、
ハサン
Doh!誰が考えていたでしょうか?新しく開かれたウィンドウは、IEの「信頼済みサイト」の一部ではありませんでした。 私のコードが正しいです、私の信頼できるサイトにターゲットURLを追加した後、今は正常に動作しています。 –