2016-04-29 20 views
0

Ich möchte eine Datei von meinem lokalen laden, ohne Auto It-Tool zu verwenden. Also habe ich Action event verwendet, um auf Durchsuchen zu klicken. Ich sende Pfad der Datei sendKeys durch folgenden Code:org.openqa.selenium.UnhandledAlertException: Modaler Dialog vorhanden:

"driver.findElement(By.xpath("//input[@type='file']")).sendKeys("path of file");" 

ich "org.openqa.selenium.UnhandledAlertException: Modal dialog present: " Störung erhalten.

Ich konnte diese Ausnahme nicht behandeln.

Bitte jemand mir helfen könnte dies zu tun ...

+1

Ich denke, es gibt ein Popup und Sie müssen dies vor sendkeys schließen. – noor

+0

Elemente können ausgefüllt werden. versuchen Sie es mit a) driver.manage() .timeouts(). implicitlyWait (60, TimeUnit.SECONDS); (oder) b) WebElement element = driver.findElement (By.id ("ELEMENT_ID")); wait.until (ExpectedConditions.visibilityOf (Element)); – AVA

Antwort

0

Sie haben die Warnung schließen Sie vor dem Senden Schlüssel bekommen. Sie können es auf diese Weise tun:

Alert alert = driver.switchTo().alert(); 
// Prints text and closes alert 
System.out.println(alert.getText()); 
alert.accept(); // or alert.dismiss(); 

oder wenn Sie Sie tun können, die Nachricht nicht brauchen nur

alert.accept(); 

EDIT

Ein anderer Weg, dies zu tun, ist Wrap Ihr Code in einem Versuch-fangen:

try{ 
    driver.findElement(By.xpath("//input[@type='file']")).sendKeys("path of file"); 
} catch(UnhandledAlertException e){ 
    Alert alert = driver.switchTo().alert(); 
    alert.accept(); 
    driver.findElement(By.xpath("//input[@type='file']")).sendKeys("path of file"); 
} 

Dies ist eindeutig eine schmutzige Lösung, aber Sie können es verwenden, um zu überprüfen, ob der obige Code für Sie funktioniert. Dann können Sie es nach Ihren Bedürfnissen selbst reinigen.

+0

Hallo AURASPHERE, Danke für deine Antwort..Ich habe versucht, diese Warnung auch, aber es wird nicht behandelt .Fehlermeldung wie "Es gibt keine Warnung vorhanden" wird in der Konsole angezeigt – sajju

+0

Der gleiche Fehler wird angezeigt "Ausnahme im Thread" main "org.openqa .selenium.UnhandledAlertException: Modaler Dialog vorhanden: " – sajju

+0

Das ist sehr seltsam. Ich vermute, das Problem besteht darin, dass bei jedem Schließen des Alarms ein weiteres erscheint. Könnten Sie das manuell überprüfen? Könnten Sie auch mehr Informationen über die Benachrichtigung, die Sie erhalten, zurückmelden? Vielen Dank. – Aurasphere

Verwandte Themen