1

Ich verwende Chrome als Browser und kann nicht richtig herausfinden, wie ein Druckdialog, der beim Klicken auf eine bestimmte Schaltfläche angezeigt wird, ausgeblendet wird. Ich habe versucht mit browser.dismissAlert(); und browser.keys([browser.Keys.ESCAPE]);, um die Escape-Taste zu treffen, und keiner funktioniert. Ich bin mir nicht sicher, ob Nightwatch weiß, dass überhaupt ein Dialog stattfindet.Einen Druckdialog in Nightwatch schließen?

Ich habe online gesucht und kann anscheinend keine Lösung finden ... hat jemand irgendwelche Ideen, bitte?

+0

Selen Verwenden Sie auf die Warnung wechseln müssen und es akzeptieren. [Diese Antwort] (http://stackoverflow.com/a/13714614/1555990) enthält zwar ein Beispiel für den Wechsel zu und die Annahme einer Warnung. – That1Guy

+0

Ich habe das versucht, und es hat leider nicht funktioniert! Ich habe ähnliche Fragen gesehen, bei denen Nutzer dieses Problem nicht in anderen Browsern hatten. Daher habe ich das Gefühl, dass Chrome den Test nicht mit ihm interagieren lässt. – Lauripops

+0

Wenn .acceptAlert() funktioniert, aber .dismissAlert(), können Sie poste dieses Problem auf Github, vielleicht ist es ein Fehler. –

Antwort

2

So, wie sich herausstellt, kann Selenium nicht mit Chrome-Dialogen umgehen. Ich habe jedoch eine Lösung gefunden, indem ich this page gelesen und --disable-print-preview zu den chromeOptions in der Datei nightwatch.json in meinem Projekt hinzugefügt habe.

Dadurch wurde der Chrome-Druckdialog geschlossen, aber immer noch der Mac-Systemdialog, und ich denke nicht, dass Selenium-Funktionen auf Systemdialoge ausgedehnt sind. Daher habe ich die Druckfunktionalität zum Testen deaktiviert.

Schade, dass ich finden wollte nicht eine bessere Lösung, sondern nur für die von Ihnen aktualisieren upvoting

Verwandte Themen