Variabelen opslaan, Echo, Alert, PopUp-afhandeling in Selenium IDE

Inhoudsopgave:

Anonim

In deze zelfstudie leren we: Winkelopdrachten, Echo-opdrachten, Waarschuwingen en het afhandelen van pop-ups.

Variabelen en het Echo-commando opslaan

Winkel

Om variabelen in Selenium IDE op te slaan, gebruiken we het "store" commando. In de onderstaande afbeelding wordt de waarde "tutorial" opgeslagen in een variabele met de naam "myVariable".

Om toegang te krijgen tot de variabele, plaatst u deze gewoon in een $ {…} - symbool. Om bijvoorbeeld de waarde van "myVariable" in het tekstvak "userName" van Mercury Tours in te voeren, voert u $ {myVariable} in het veld Waarde in.

StoreElementPresent

Dit commando slaat "true" of "false" op, afhankelijk van de aanwezigheid van het gespecificeerde element. Het onderstaande script slaat de Booleaanse waarde "true" op in "var1" en "false" op "var2". Om dit te verifiëren, zullen we het "echo" commando gebruiken om de waarden van var1 en var2 weer te geven. De basis-URL voor de onderstaande illustratie is ingesteld op de startpagina van Mercury Tours.

StoreText

Dit commando wordt gebruikt om de binnentekst van een element op een variabele op te slaan. In de onderstaande afbeelding wordt de binnentekst van de tag op Facebook opgeslagen in een variabele met de naam 'textVar'.

Omdat dit het enige element op de pagina is, is het veilig om 'css = h1' als ons doel te gebruiken. De afbeelding hieronder laat zien dat Selenium IDE de string "Sign Up" in de 'textVar' variabele kon opslaan door de waarde correct af te drukken.

Waarschuwingen, pop-ups en meerdere vensters

Waarschuwingen zijn waarschijnlijk de eenvoudigste vorm van pop-upvensters. De meest voorkomende Selenium IDE-opdrachten die worden gebruikt bij het afhandelen van waarschuwingen zijn de volgende:

assertAlert assertNotAlert haalt het bericht van de waarschuwing op en voegt het toe aan een tekenreekswaarde die u hebt opgegeven
assertAlertPresent assertAlertNotPresent beweert of er een waarschuwing aanwezig is of niet
storeAlert haalt het waarschuwingsbericht op en slaat het op in een variabele die u specificeert
storeAlertPresent geeft WAAR terug als er een waarschuwing aanwezig is; ONWAAR indien anders
verificAlert verificNotAlert haalt het bericht van de waarschuwing op en controleert of het gelijk is aan de tekenreekswaarde die u hebt opgegeven
verifieerAlertPresent verifieerAlertNotPresent controleert of er een waarschuwing aanwezig is of niet

Onthoud deze twee dingen wanneer u met waarschuwingen werkt:

  • Selenium IDE zal automatisch op de OK-knop van het waarschuwingsvenster klikken, zodat u de daadwerkelijke waarschuwing niet kunt zien.
  • Selenium IDE kan geen waarschuwingen verwerken die binnen de onload () -functie van de pagina staan. Het kan alleen waarschuwingen verwerken die worden gegenereerd nadat de pagina volledig is geladen.

In dit voorbeeld zullen we de opdracht storeAlert gebruiken om te laten zien dat hoewel Selenium IDE de daadwerkelijke waarschuwing niet liet zien, het toch zijn bericht kon ophalen.

Stap 1. Stel in Selenium IDE de basis-URL in op http://jsbin.com. & de volledige url is: http://jsbin.com/usidix

Stap 2. Maak het script zoals hieronder weergegeven.

Stap 3. Voer het script uit en verwacht niet dat u de daadwerkelijke waarschuwing kunt zien.

Bevestigingen

Bevestigingen zijn pop-ups die u een OK- en een CANCEL-knop geven, in tegenstelling tot waarschuwingen die u alleen de OK-knop geven. De opdrachten die u kunt gebruiken bij het afhandelen van bevestigingen zijn vergelijkbaar met die bij het afhandelen van waarschuwingen.

  • assertConfirmation / assertNotConfirmation
  • assertConfirmationPresent / assertConfirmationNotPresent
  • storeConfirmation
  • storeConfirmationPresent
  • verifiërenConfirmation / verifyNotConfirmation
  • verifiërenConfirmationPresent / verifyConfirmationNotPresent

Dit zijn echter de aanvullende opdrachten die u moet gebruiken om Selenium te instrueren welke optie u moet kiezen, of het nu de OK- of CANCEL-knop is.

  • chooseOkOnNextConfirmation / chooseOkOnNextConfirmationAndWait
  • kiesCancelOnNextConfirmation

U moet deze opdrachten gebruiken voor een opdracht die het bevestigingsvenster activeert, zodat Selenium IDE van tevoren weet welke optie u moet kiezen. Nogmaals, u zult het daadwerkelijke bevestigingsvenster niet kunnen zien tijdens de uitvoering van het script.

Laten we een webpagina testen met een knop die is gecodeerd om te laten zien of de gebruiker op de knop OK of ANNULEREN heeft gedrukt.

Stap 1. Stel in Selenium IDE de basis-URL in op http://jsbin.com en de volledige URL is: http://jsbin.com/enifaf

Stap 2. Maak het script zoals hieronder weergegeven. Deze keer zullen we eerst op de OK-knop drukken.

Stap 3. Voer het script uit en merk op dat je de daadwerkelijke bevestiging niet ziet, maar de webpagina kon wel aangeven op welke knop Selenium IDE had gedrukt.

Stap 4. Vervang de opdracht "chooseOkOnNextConfirmation" door "chooseCancelOnNextConfirmation" en voer het script opnieuw uit.

Meerdere vensters

Als u toevallig op een link klikt die een apart venster opent, moet u Selenium IDE eerst instrueren om dat venster te selecteren voordat u toegang krijgt tot de elementen erin . Om dit te doen, gebruikt u de titel van het venster als locator .

We gebruiken de opdracht selectWindow bij het schakelen tussen vensters.

We gebruiken een link http://jsbin.com/ocinaj/1 waarvan de titel "Eerste venster" is. De "hier" hyperlink op die pagina zal Facebook openen in een nieuw venster, waarna we Selenium IDE zullen instrueren om het volgende te doen:

  • Breng de besturing over van het bovenliggende venster naar het nieuw gelanceerde Facebook-venster met de opdracht "selectWindow" en de titel ervan als locator
  • Controleer de titel van het nieuwe venster
  • Selecteer het originele venster terug met de opdracht "selectWindow" en "null" als doel.
  • Controleer de titel van het momenteel geselecteerde venster

Stap 1. Stel de basis-URL in op http://jsbin.com.

Stap 2. Maak het script zoals hieronder weergegeven.

We hebben het "pause" -commando nodig om te wachten tot het nieuw gelanceerde venster is geladen voordat we toegang konden krijgen tot de titel.

Stap 3. Voer het script uit. Merk op dat de testcase is geslaagd, wat betekent dat we tussen vensters konden schakelen en hun titels konden verifiëren.

Onthoud altijd dat het instellen van het doel van selectWindow op "null" automatisch het bovenliggende venster selecteert (in dit geval het venster waarin het element "link = here" wordt gevonden)

Opmerking: Facebook heeft de titel veranderd sinds de creatie van Tutorials. Wijzig de code dienovereenkomstig

Overzicht

  • Het "store" -commando (en al zijn varianten) worden gebruikt om variabelen op te slaan in Selenium IDE
  • Het "echo" commando wordt gebruikt om een ​​stringwaarde of een variabele af te drukken
  • Variabelen worden ingesloten tussen $ {…} wanneer ze worden afgedrukt of gebruikt op elementen
  • Selenium IDE drukt automatisch op de OK-knop bij het afhandelen van waarschuwingen
  • Bij het afhandelen van bevestigingsdialogen, kunt u Selenium IDE instrueren welke optie moet worden gebruikt:
    • chooseOkOnNextConfirmation / chooseOkOnNextConfirmationAndWait
    • kiesCancelOnNextConfirmation
  • Venstertitels worden gebruikt als locators bij het schakelen tussen browservensters.
  • Wanneer u het "selectWindow" -commando gebruikt, zal het instellen van het doel op "null" Selenium IDE automatisch leiden om het bovenliggende venster te selecteren.