2016-05-27 28 views
0

Ich möchte den Browser für einen ungültigen Benutzernamen/Passwort schließen, aber ich kann das nicht tun. Es läuft gut für eine gültige Eingabe, aber für eine ungültige friert es einfach auf der Seite ein, auf der es "ungültiges Login" anzeigt. Das ist mein Code. Setup1 öffnet nur den Browser.selen webdriver ungültiger Login

while (recordset.next()) {

    setUp1(); 
        System.out.println(driver1); 
        driver1.manage().timeouts().implicitlyWait(3000, TimeUnit.SECONDS);  

       System.out.println(recordset.getField("NAME")); 
       System.out.println(recordset.getField("PASSWORD")); 

       String store1 = recordset.getField("NAME"); 
       String store = recordset.getField("PASSWORD"); 


       driver1.findElement(By.id("signin_button")).click(); 
       driver1.findElement(By.id("user_login")).clear(); 
       driver1.findElement(By.id("user_password")).clear(); 
       driver1.findElement(By.id("user_login")).sendKeys(store1); 
       driver1.findElement(By.id("user_password")).sendKeys(store); 

       driver1.findElement(By.name("submit")).click(); 


       driver1.findElement(By.xpath("//div/ul[@class = 'nav float-right']/li[3]")).click();    
       driver1.findElement(By.id("logout_link")).click(); 

Antwort

0

können Sie driver1.close() nennen, wenn driver1.findElement(By.xpath("//div/ul[@class = 'nav float-right']/li[3]")) eine NoSuchElementException Ausnahme auslöst.

Der Browser wird geschlossen, wenn die aktuelle Seite die einzige geöffnete Seite im Browser ist. Hier

ein Beispiel:

try{ 
    WebElement elm = driver1.findElement(By.xpath("//div/ul[@class = 'nav float-right']/li[3]")); 
    elm.click(); 
}catch(NoSuchElementException e){ 
    driver1.close(); 
    break; // exit the loop. 
} 
+0

nicht seine nicht funktioniert. Ich brauche etwas, das den Browser bei einer ungültigen Anmeldung schließt. es schließt nicht. –

+0

@AvantikaSarkar Statt 'By.xpath (" // div/ul [@class = 'nav float-right']/li [3] ") versuchen Sie, ein Element zu erhalten, das nur bei gültiger Anmeldung angezeigt wird ein Element, das nur bei ungültiger Anmeldung angezeigt wird, und wenn es vorhanden ist, rufe 'close()' auf. – Titus

+0

ya Ich versuche, das Fehlerelement mit if else hinzuzufügen, aber ich bin nicht in der Lage, das zu tun. es zeigt add "! = null". –