0

Selenium GUI (Firefox) を使用してテストを記録しようとしています。以下に示すように、アプリケーションは画像をハイパーリンクとして使用します。

<a class="mainheading" align="center" target="_blank" href="https://myapps.web.com/prepaid/customer/index.jsp"> <img width="256" height="57" border="0" alt="customer" src="images/customer.jpg"/> </a>

上の画像をクリックすると、a hrefタグが別のウィンドウを開きます。新しいウィンドウが開いたら、そのウィンドウで残りのテストを実行する必要があります。問題は、テストを記録するときに、実行中のアクションが新しいウィンドウにあることを Selenium GUI が理解できないことです。したがって、アクションを適切に記録しても、事前に記録されたテストを実行すると、要素が見つからないというエラーが表示されます。これは、Seleniumが元のウィンドウでのみ要素を見つけようとするために発生すると考えました(上記のために開かれた新しいウィンドウではありませんa href)。

Google を試しましたが、得られた解決策は上記の状況と一致しませんでした (つまり、 ではなくa href新しいウィンドウが開きますwindow.open)。誰かアドバイスをお願いできますか?

ありがとうございました。

4

2 に答える 2

1

次のようにドライバウィンドウハンドルを使用できます。

// Get a list of window identities
List<string> windowIdentities = driver.WindowHandles.ToList();

// Switch control over to the other window
driver.SwitchTo().Window(windowIdentities[1]);

これはC#で記述されていますが、別の言語で記述している場合でも、それほど違いはありません。これがあなたのために働くかどうか私に知らせてください!

于 2012-07-17T20:49:40.940 に答える
0

アクションを実行する前に、新しいウィンドウに移動する必要があります。そのために、webdriver を使用している場合は switchTo.window を使用できます。それ以外の場合、ide では、適切なウィンドウに移動してそこでアクションを続行するための selectwindow が必要です。

于 2012-07-14T12:56:49.457 に答える