Bewaar variabelen, echo, waarschuwing en pop-upafhandeling in Selenium IDE

In deze tutorial leren we winkelopdrachten, echo-opdrachten, waarschuwingen en pop-upafhandeling.

Selenium IDE-variabelen

Shop

Om variabelen in op te slaan Selenium IDE gebruiken we de opdracht "store". In de onderstaande illustratie wordt de waarde ‘tutorial’ opgeslagen in een variabele met de naam ‘myVariable’.

Selenium IDE-variabelen

Om toegang te krijgen tot de variabele, omsluit u deze eenvoudigweg met een ${ … }-symbool. Om bijvoorbeeld de waarde van “myVariable” in te voeren in het tekstvak “userName” van Mercury Tours, voer ${myVariable} in het veld Waarde in.

Selenium IDE-variabelen

StoreElementPresent

Deze opdracht slaat “true” of “false” op, afhankelijk van de aanwezigheid van het opgegeven element. Het onderstaande script slaat de Booleaanse waarde “true” op in “var1” en “false” in “var2”. Ter verificatie gebruiken we de opdracht “echo” om de waarden van var1 en var2 weer te geven. De basis-URL voor de onderstaande afbeelding is ingesteld op Mercury Homepagina van rondleidingen.

StoreElementPresent

WinkelTekst

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

WinkelTekst

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

WinkelTekst

Waarschuwingen, pop-up en meerdere Windows

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

Alerts u gebruikt

bewerenAlert

bewerenNotAlert

haalt het bericht van de waarschuwing op en bevestigt dit aan een tekenreekswaarde die u hebt opgegeven

assertAlertPresent

assertAlertNotPresent

beweert of er een waarschuwing aanwezig is of niet
winkelAlert haalt het waarschuwingsbericht op en slaat het op in een variabele die u opgeeft
winkelAlertAanwezig retourneert TRUE als er een waarschuwing aanwezig is; FALSE als dit niet het geval is

verifieerAlert

verifieerNietAlert

haalt het bericht van de waarschuwing op en verifieert of dit gelijk is aan de tekenreekswaarde die u hebt opgegeven

verificatieAlertPresent

verifieerAlertNietPresent

verifieert of er een waarschuwing aanwezig is of niet

Onthoud deze twee dingen wanneer u met waarschuwingen werkt:

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

In dit voorbeeld gebruiken we de opdracht storeAlert om dat aan te tonen, ook al Selenium IDE liet de daadwerkelijke waarschuwing niet zien, maar kon het bericht nog steeds ophalen.

Stap 1) In Selenium IDE, stel de basis-URL in op http://jsbin.com. & de volledige URL is: http://jsbin.com/usidix

Stap 2) Maak het script zoals hieronder weergegeven.

Waarschuwingen, pop-up en meerdere Windows

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

Waarschuwingen, pop-up en meerdere Windows

bevestigingen

Bevestigingen zijn pop-ups die u een OK- en een ANNULEREN-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 voor het afhandelen van waarschuwingen.

  • assertConfirmation/assertNotConfirmation
  • assertConfirmationPresent/assertConfirmationNotPresent
  • winkelBevestiging
  • winkelBevestigingAanwezig
  • verificatieConfirmatie/verifyNotConfirmation
  • verificatieConfirmationPresent/verifyConfirmationNotPresent

Dit zijn echter de aanvullende opdrachten die u moet gebruiken om instructies te geven Selenium welke optie u wilt kiezen, de knop OK of ANNULEREN.

  • kiesOkOnNextConfirmation/kiesOkOnNextConfirmationAndWait
  • kiesAnnulerenAanVolgendeBevestiging

U moet deze opdrachten gebruiken vóór een opdracht die het bevestigingsvenster activeert, zodat Selenium IDE weet vooraf welke optie gekozen moet worden. Nogmaals, u zult het daadwerkelijke bevestigingsvak niet kunnen zien tijdens de uitvoering van het script.

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

Stap 1) In Selenium IDE, stel de basis-URL in op http://jsbin.com

& de volledige URL is: http://jsbin.com/enifaf

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

bevestigingen

Stap 3) Voer het script uit en merk dat u niet de daadwerkelijke bevestiging ziet, maar dat de webpagina wel heeft kunnen aangeven welke knop Selenium IDE had gedrukt.

bevestigingen

Stap 4) Vervang de opdracht “chooseOkOnNextConfirmation” door “chooseCancelOnNextConfirmation” en voer het script opnieuw uit.

bevestigingen

meervoudig Windows

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

We gebruiken de opdracht selectWindow om tussen vensters te schakelen.

We gebruiken een link http://jsbin.com/ocinaj/1 met de titel 'Eerste venster'. De “hier”-hyperlink op die pagina opent Facebook in een nieuw venster, waarna we instructies zullen geven Selenium IDE om het volgende te doen:

  • Draag de controle over van het bovenliggende venster naar het nieuw gelanceerde Facebook-venster met behulp van 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

meervoudig Windows

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

Stap 2) Maak het script zoals hieronder weergegeven.

meervoudig Windows

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

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

meervoudig Windows

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

Opmerking: Facebook heeft de titel veranderd sinds de oprichting van Tutorials. Pas de code dienovereenkomstig aan

Samenvatting

  • Het commando “store” (en al zijn varianten) wordt gebruikt om variabelen op te slaan Selenium IDE
  • Het commando “echo” wordt gebruikt om een ​​stringwaarde of een variabele af te drukken
  • Variabelen worden omsloten door een ${…} 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 instructies geven Selenium IDE welke optie te gebruiken:
    • kiesOkOnNextConfirmation/kiesOkOnNextConfirmationAndWait
    • kiesAnnulerenAanVolgendeBevestiging
  • Venstertitels worden gebruikt als locators bij het schakelen tussen browservensters.
  • Wanneer u de opdracht “selectWindow” gebruikt, stelt u de Target naar “null” zal automatisch leiden Selenium IDE om het bovenliggende venster te selecteren.