2017-10-23 3 views
0

Wenn Sie auf eine Option aus einem Dropdown-Menü mit Selen-Webdriver klicken, wird der Link in einem neuen Tab geöffnet.Wechseln zu Elementen der neuen Registerkarte - Selen

Also, wenn ich versuche, Elemente zu finden, bekomme ich eine Nullzeiger Ausnahme. Wie wechsle ich zu der neuen Registerkarte, um Elemente zu finden?

Ich arbeite an Chrome-Browser mit Java-Sprache.

Antwort

0

ich habe eine andere Lösung gefunden, die für mich arbeitet, - Fenster-Handler mit

String parentWindowHandler=driver.getWindowHandle();// Store your parent window 
String subWindowHandler = null; 
Set<String> handles = driver.getWindowHandles(); // get all window handles 
      Iterator<String> iterator = handles.iterator(); 
      while (iterator.hasNext()){ 
       subWindowHandler = iterator.next(); 
      } 
driver.switchTo().window(subWindowHandler); // switch to popup window 

und Sie können bei Bedarf zum übergeordneten Fenster wechseln, indem Sie driver.switchTo(). Window (parentWindowHandler);

0

Sie Roboter-Klasse verwenden können, um die neuen Tab zu wechseln Tastenkombinationen CTRL + SHIFT + TAB - Wechseln zwischen Registerkarten

Robot robot = new Robot(); 
robot.keyPress(KeyEvent.VK_CONTROL); 
robot.keyPress(KeyEvent.VK_SHIFT); 
robot.keyPress(KeyEvent.VK_TAB); 
robot.keyRelease(KeyEvent.VK_TAB); 
robot.keyRelease(KeyEvent.VK_SHIFT); 
robot.keyRelease(KeyEvent.VK_CONTROL); 

Sie auch eine der folgenden Methoden verwenden: Switch tabs using Selenium WebDriver with Java

+0

Ich möchte keine Roboterklasse verwenden, da sie bei paralleler Ausführung andere Tests beeinträchtigt – AutomationTester

+0

@AutomationTester Es gibt viele andere Möglichkeiten, dies in der angegebenen Verknüpfung zu tun. Bitte gehen Sie es durch. – Yuga

Verwandte Themen