まだ使い始めでよくわかってないので色々メモ。
WebDriverを使ってテスト中、リンクをクリックして開いたページで処理を続けるってのはよくあることだと思うけど、そのリンクがtarget="_blank"で別ウインドウで開くとちょっと面倒
- //後で比較するために、現在のウインドウIDを取得
- String current_window_id = driver.getWindowHandle();
- //別ウインドウで開くリンクをクリック
- link_element.click();
- //開いたウインドウも含め全部のウインドウIDを取得する
- java.util.Set<string> window_ids = driver.getWindowHandles();
- String new_window_id = null;
- for(String id :window_ids){
- if(!id.equals(current_window_id)){
- //現在のウインドウIDと違っていたら格納
- //最後に格納されたIDが一番新しく開かれたウインドウと判定
- new_window_id = id;
- }
- }
- //最後に格納したウインドウIDにスイッチ
- driver.switchTo().window(new_window_id);
- //以上
- </string>
0 件のコメント:
コメントを投稿