Ich beginne mit Selenium IDE und versuche eine Webapp zu testen, die voll von modalen Dialogen ( window.showModalDialog
) ist.
Die Aufzeichnung des Tests scheint zu funktionieren (außer es ist nichts im Protokoll, wenn das Dialogfeld erscheint), aber sie werden nicht korrekt wiedergegeben. Das Skript öffnet das Fenster (ausgelöst durch einen Klick auf die Schaltfläche), wartet dann aber unbegrenzt.
Irgendwelche Vorschläge?
Aus dem Selenium FAQ funktioniert Selenium anscheinend mit einigen Arten von Dialogen, aber nicht mit anderen:
Ich kann nicht mit einem Popup-Dialog interagieren. Mein Test stoppt in seinen Spuren!
Sie können, aber nur wenn der Dialog ein ist Alarm- oder Bestätigungsdialog Andere spezielle Dialoge können nicht von abgewiesen werden Javascript und somit kann derzeit nicht mit interagiert werden. Dazu gehören die "Datei speichern", "Dieses Passwort merken" (Firefox) und modale (IE) Dialoge. Wenn sie erscheinen, kann Selen nur in Verzweiflung die Hände abwehrend.
Um dieses Problem zu lösen, können Sie a Workaround (falls vorhanden); Andernfalls Sie müssen den Test möglicherweise ausschließen Ihr automatisierter Korpus. Für die "Speichern Datei "Dialog in Firefox, eine benutzerdefinierte Vorlage kann beim Ausführen angegeben werden über die RC, die immer die verursachen wird Datei, die zu einem angegebenen heruntergeladen werden soll Standort, ohne den Benutzer abzufragen (sehen Ссылка ). Der Dialog "Passwort speichern" sollte nicht wieder erscheinen, nachdem du es getan hast gewählt, um es zu erinnern. Momentan da ist nicht viel, was über IE getan werden kann modale Dialoge.
Ich kann mich daran erinnern, dass jemand mit einem AutoHotKey -Skript, das den Dialog geschlossen hat, daran gearbeitet hat.
Ich habe schon seit einiger Zeit Selenium IDE benutzt, um jQuery Modals zu testen, ich hatte nie Probleme. Hier sind die Dinge, die ich tue, um sicherzustellen, dass der Test bei der Wiedergabe korrekt ausgeführt wird:
Hoffe, das hilft. Wenn Sie weitere Hilfe benötigen, können Sie den Code mit mir zusammen mit dem Fehler bei der Ausführung teilen, den die IDE Ihnen anbietet.
So behandle ich Popup-Alarm in Selenium IDE
Klicken Sie mit der rechten Maustaste auf das Element (in diesem Fall Ihr Popup-Fenster). Sie können einen Befehl auswählen. Es gibt auch eine Liste aller verfügbaren Befehle, die eine Hilfe sein könnten. Sie sollten AssertElementPreset verwenden und ich denke, der beste Locator in diesem Fall ist CSS. Sie können also AssertElementPresent wählen.
Oder
Sie können zwei Befehle auf Selenium IDE verwenden
%Vor%Hoffe, das hilft!
Tags und Links unit-testing selenium selenium-ide