ログインして新しいメールを作成し、送信してログアウトするためのセレンスクリプトを作成しています。しかし、[新規メール]ボタンをクリックすると、新しいウィンドウが開きます。セレンで私はこれをどのように扱うことができます。私はセレンを初めて使っています。詳しく説明してください。あなたがここでそれを見つけることができるウィンドウ・コマンドスイッチwebdriverをセレンではどのように新しいウィンドウを扱う?
1
A
答えて
1
+0
これは答えではありませんコメントであったはずです。ありがとう – DebanjanB
0
以下のコードを使用して、あなたはgetWindowHandles-を使用する必要があり、私はそれはあなたが動けなくなる場合には、私に教えてください、役に立てば幸い他の場所 -
@Test
public void multipleWindows() {
driver.get(URL+"/windows");
driver.findElement(By.cssSelector(".example a")).click();
Object[] allWindows = driver.getWindowHandles().toArray();
driver.switchTo().window(allWindows[0].toString());
Assert.assertNotEquals(driver.getTitle(), "New Window");
driver.switchTo().window(allWindows[1].toString());
Assert.assertEquals(driver.getTitle(), "New Window");
}
}
0
このコードを試してみると、わかりやすくなります。
WebDriver driver = new FirefoxDriver();
driver.get("http://demo.guru99.com/popup.php");
driver.findElement(By.xpath("html/body/p/a")).click();
// return the parent window name as a String
String parentWindow=driver.getWindowHandle();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
// Pass a window handle to the other window
for(String childWindow: driver.getWindowHandles())
{
System.out.println("Switch to child window");
//switch to child window
driver.switchTo().window(childWindow);
//find an element and print text of it
WebElement textLabel=driver.findElement(By.xpath("html/body/div[1]/h2"));
System.out.println(" text: "+textLabel.getText());
driver.close();
}
System.out.println("Get back to parent window");
//switch to Parent window
driver.switchTo().window(parentWindow);
//find an element and print text of it
WebElement logotext=driver.findElement(By.xpath("html/body/div[1]/h2"));
System.out.println("text: "+logotext.getText());
driver.close();
}
関連する問題
- 1. FLINKでスーパーサイズのウィンドウを扱うには?
- 2. セレンは新しいタブにどのように集中できますか?
- 3. より効率的なGUIウィンドウをどのように扱うか?
- 4. どのようにセレン
- 5. セレン、新しいウィンドウでリンクを開くには?
- 6. は、どのように私は、コードを次しているセレン
- 7. Socket.io:2つのウィンドウを開く認証済みクライアントを扱うにはどうすればよいですか?
- 8. セレン - どのように私は
- 9. NpyIter(新しいAPI)による直接データアクセスはどのように機能しますか?どのようにchar *型を扱うのですか?
- 10. Cコンパイラはどのようにビットフィールドを扱うのですか?
- 11. Railsでは、複数のチェックボックスをどのように扱うか?
- 12. Pythonで新しいウィンドウを開く(vimのように)
- 13. セレンの新しいウィンドウ(ポップアップではない)にコントロールを渡す方法は?
- 14. セレンは新しい開かれたウィンドウを認識しません - セレンC#
- 15. wpfでウィンドウを更新するにはどうすればよいですか?
- 16. セレンwebdriverを:どのように属性
- 17. がどのようにウィンドウ
- 18. どのように親ウィンドウ
- 19. Pythonでビッグアレイをどのように扱うのですか?
- 20. はどのようにRubyプログラムにセレンと値を設定し
- 21. セレンのポップアップ、アラート、および新しいウィンドウを区別する方法は?
- 22. どのように... Pythonとセレン
- 23. ウィンドウwchar_tは基本的な多言語面の外でユニコード文字をどのように扱いますか?
- 24. stdarg.h関数をどのように扱うのですか?
- 25. マスターとフィーチャーブランチをどのように扱うのですか?
- 26. 関数をどのように扱うのですか?
- 27. セレンはどのように要素を比較しますか?
- 28. どのように並行処理を正しく扱うか?
- 29. Qtアプリケーションで「プロジェクトファイル」を扱うにはどうすればよいですか?
- 30. Facebookはテキストのオーバーフローをどのように扱いますか?
の可能性のある重複した[セレンwebdriverを中mutlipleの窓を処理する方法は、第三のウィンドウに2つ目から切り替える必要がある](https://stackoverflow.com/questions/45455402/how-to-handle-mutliple-windows -in-selenium-webdriver-need-to-second-second) – DebanjanB