Speichern Sie Variablen, Echo, Warnung und PopUp-Verarbeitung in der Selenium-IDE

In diesem Tutorial lernen wir Store-Befehle, Echo-Befehle, Warnungen und Popup-Behandlung.

Selenium IDE-Variablen

Geschäft

Um Variablen in der Selenium IDE zu speichern, verwenden wir den Befehl „store“. In der Abbildung unten wird der Wert „tutorial“ in einer Variablen namens „myVariable“ gespeichert.

Selenium IDE-Variablen

Um auf die Variable zuzugreifen, schließen Sie sie einfach in ein ${ … }-Symbol ein. Geben Sie beispielsweise den Wert „myVariable“ in den Text „userName“ einbox von Mercury Tours geben Sie ${myVariable} in das Feld „Wert“ ein.

Selenium IDE-Variablen

StoreElementPresent

Dieser Befehl speichert entweder „true“ oder „false“, je nachdem, ob das angegebene Element vorhanden ist. Das folgende Skript speichert den booleschen Wert „true“ in „var1“ und „false“ in „var2“. Zur Überprüfung verwenden wir den Befehl „echo“, um die Werte von var1 und var2 anzuzeigen. Die Basis-URL für die Abbildung unten wurde auf die Homepage von Mercury Tours festgelegt.

StoreElementPresent

StoreText

Mit diesem Befehl wird der innere Text eines Elements in einer Variablen gespeichert. In der Abbildung unten wird der innere Text des Tags in Facebook in einer Variablen namens „textVar“ gespeichert.

StoreText

Da es das einzige Element auf der Seite ist, ist es sicher, „css=h1“ als Ziel zu verwenden. Das Bild unten zeigt, dass Selenium IDE die Zeichenfolge „Sign Up“ in der Variablen „textVar“ speichern konnte, indem der Wert korrekt ausgegeben wurde.

StoreText

Warnungen, Popup und mehrere Windows

Warnungen sind wahrscheinlich die einfachste Form von Pop-ups windows. Die am häufigsten zur Verarbeitung von Warnungen verwendeten Selenium-IDE-Befehle sind die folgendenwing:

Warnmeldungen Verwendung

AssertAlert

affirmNotAlert

Ruft die Meldung der Warnung ab und setzt sie auf einen von Ihnen angegebenen Zeichenfolgenwert um

AssertAlertPresent

AssertAlertNotPresent

Gibt an, ob eine Warnung vorhanden ist oder nicht
storeAlert ruft die Warnmeldung ab und speichert sie in einer Variablen, die Sie angeben
storeAlertPresent gibt TRUE zurück, wenn eine Warnung vorliegt; FALSE, wenn anderswise

überprüfenAlert

verifyNotAlert

Ruft die Meldung der Warnung ab und überprüft, ob sie mit dem von Ihnen angegebenen Zeichenfolgenwert übereinstimmt

verifyAlertPresent

verifyAlertNotPresent

überprüft, ob eine Warnung vorliegt oder nicht

Beachten Sie beim Arbeiten mit Warnungen diese beiden Dinge:

  • Selenium IDE klickt automatisch auf die Schaltfläche „OK“ im Warnfenster, sodass Sie die eigentliche Warnung nicht sehen können.
  • Selenium IDE kann keine Warnungen verarbeiten, die sich in der onload()-Funktion der Seite befinden. Es können nur Warnungen verarbeitet werden, die generiert werden, nachdem die Seite vollständig geladen wurde.

In diesem Beispiel verwenden wir den Befehl „storeAlert“, um zu zeigen, dass Selenium IDE, obwohl es die eigentliche Warnung nicht anzeigte, seine Nachricht dennoch abrufen konnte.

Schritt 1) Legen Sie in der Selenium-IDE die Basis-URL auf http://jsbin.com fest. & die vollständige URL lautet: http://jsbin.com/usidix

Schritt 2) Erstellen Sie das Skript wie unten gezeigt.

Warnungen, Popup und mehrere Windows

Schritt 3) Führen Sie das Skript aus und erwarten Sie nicht, dass Sie die tatsächliche Warnung sehen können.

Warnungen, Popup und mehrere Windows

Bestätigungen

Bei Bestätigungen handelt es sich um Popups mit den Schaltflächen „OK“ und „ABBRECHEN“, im Gegensatz zu Benachrichtigungen, bei denen nur die Schaltfläche „OK“ angezeigt wird. Die Befehle, die Sie bei der Bearbeitung von Bestätigungen verwenden können, ähneln denen bei der Bearbeitung von Warnungen.

  • affirmConfirmation/assertNotConfirmation
  • assertConfirmationPresent/assertConfirmationNotPresent
  • StoreBestätigung
  • storeConfirmationPresent
  • verifyConfirmation/verifyNotConfirmation
  • verifyConfirmationPresent/verifyConfirmationNotPresent

Dies sind jedoch die zusätzlichen Befehle, die Sie verwenden müssen, um Selenium anzuweisen, welche Option ausgewählt werden soll, ob die Schaltfläche „OK“ oder „ABBRECHEN“.

  • ChooseOkOnNextConfirmation/chooseOkOnNextConfirmationAndWait
  • Wählen SieAbbrechenBeiNächsteBestätigung

Sie sollten diese Befehle vor einem Befehl verwenden, der die Bestätigung auslöst box damit Selenium IDE im Voraus weiß, welche Option sie wählen muss. Auch hier können Sie die tatsächliche Bestätigung nicht sehen box während der Skriptausführung.

Lassen Sie uns eine Webseite testen, die über eine Schaltfläche verfügt, die so codiert ist, dass sie anzeigt, ob der Benutzer die Schaltfläche „OK“ oder „ABBRECHEN“ gedrückt hat.

Schritt 1) Legen Sie in der Selenium-IDE die Basis-URL auf http://jsbin.com fest

& die vollständige URL lautet: http://jsbin.com/enifaf

Schritt 2) Erstellen Sie das Skript wie unten gezeigt. Dieses Mal drücken wir zuerst die OK-Taste.

Bestätigungen

Schritt 3) Führen Sie das Skript aus und stellen Sie fest, dass Sie die tatsächliche Bestätigung nicht sehen, die Webseite jedoch anzeigen konnte, welche Schaltfläche Selenium IDE gedrückt hat.

Bestätigungen

Schritt 4) Ersetzen Sie den Befehl „chooseOkOnNextConfirmation“ durch „chooseCancelOnNextConfirmation“ und führen Sie das Skript erneut aus.

Bestätigungen

Mehrere Windows

Wenn Sie auf einen Link klicken, der ein separates Fenster öffnet, müssen Sie Selenium IDE zunächst anweisen, dieses Fenster auszuwählen, bevor Sie auf die darin enthaltenen Elemente zugreifen können. Dazu verwenden Sie den Titel des Fensters als Locator.

Zum Wechseln verwenden wir den Befehl „selectWindow“. windows.

Wir werden einen Link http://jsbin.com/ocinaj/1 verwenden, dessen Titel „Erstes Fenster“ lautet. Der „hier“-Hyperlink auf dieser Seite öffnet Facebook in einem neuen Fenster, woraufhin wir Selenium IDE anweisen, die folgenden Schritte auszuführenwing:

  • Übertragen Sie die Kontrolle vom übergeordneten Fenster auf das neu gestartete Facebook-Fenster, indem Sie den Befehl „selectWindow“ und seinen Titel als Locator verwenden
  • Überprüfen Sie den Titel des neuen Fensters
  • Wählen Sie das ursprüngliche Fenster mit dem Befehl „selectWindow“ und „null“ als Ziel zurück.
  • Überprüfen Sie den Titel des aktuell ausgewählten Fensters

Mehrere Windows

Schritt 1) Legen Sie die Basis-URL auf http://jsbin.com fest.

Schritt 2) Erstellen Sie das Skript wie unten gezeigt.

Mehrere Windows

Wir benötigen den Befehl „Pause“, um auf das Laden des neu gestarteten Fensters zu warten, bevor wir auf dessen Titel zugreifen können.

Schritt 3) Führen Sie das Skript aus. Beachten Sie, dass die Testfall bestanden, was bedeutete, dass wir zwischen wechseln konnten windows und ihre Titel erfolgreich überprüfen.

Mehrere Windows

Denken Sie immer daran, dass das Festlegen des Ziels von selectWindow auf „null“ automatisch das übergeordnete Fenster auswählt (in diesem Fall das Fenster, in dem sich das Element „link=here“ befindet).

Hinweis: Facebook hat den Titel seit der Erstellung von Tutorials geändert. Bitte ändern Sie den Code entsprechend

Zusammenfassung

  • Der Befehl „store“ (und alle seine Varianten) werden zum Speichern von Variablen in der Selenium IDE verwendet
  • Der Befehl „echo“ wird verwendet, um einen String-Wert oder eine Variable auszugeben
  • Variablen werden in ein ${…} eingeschlossen, wenn sie gedruckt oder für Elemente verwendet werden
  • Selenium IDE drückt bei der Bearbeitung von Warnungen automatisch die OK-Taste
  • Bei der Bearbeitung von Bestätigungsdialogen können Sie Selenium IDE anweisen, welche Option verwendet werden soll:
    • ChooseOkOnNextConfirmation/chooseOkOnNextConfirmationAndWait
    • Wählen SieAbbrechenBeiNächsteBestätigung
  • Fenstertitel werden beim Wechseln zwischen Browsern als Suchhilfen verwendet windows.
  • Wenn Sie den Befehl „selectWindow“ verwenden und das Ziel auf „null“ setzen, wird Selenium IDE automatisch angewiesen, das übergeordnete Fenster auszuwählen.