Bruksanvisning Selenium IDE med skript og kommandoer (bekrefte, bekrefte)

Vi vil bruke Mercury Tours nettsted som vår nettapplikasjon under testing. Det er et online flyreservasjonssystem som inneholder alle elementene vi trenger for denne opplæringen. URLen er https://demo.guru99.com/test/newtours/, og dette vil være vår base-URL.

La oss nå lage vårt første testskript i Selenium IDE ved å bruke den vanligste metoden – ved å ta opp. Etterpå skal vi kjøre skriptet vårt ved å bruke avspillingsfunksjonen.

Lag et skript ved å ta opp

Trinn 1

Lag et skript ved å ta opp

Trinn 2

In Firefox, navigere til https://demo.guru99.com/test/newtours/. Firefox bør ta deg til siden som ligner på den som vises nedenfor.

Lag et skript ved å ta opp

Trinn 3

  • Høyreklikk på et tomt område på siden, som på Mercury Tours-logo i øvre venstre hjørne. Dette vil ta opp Selenium IDE kontekstmeny. Merk: Ikke klikk på noen hyperkoblingsobjekter eller bilder
  • Velg alternativet "Vis tilgjengelige kommandoer".
  • Velg deretter "assertTitle exact: Welcome: Mercury Turer." Dette er en kommando som sørger for at sidetittelen er riktig.

Lag et skript ved å ta opp

Lag et skript ved å ta opp

Trinn 4

  • I tekstboksen "Brukernavn" til Mercury Tours, skriv inn et ugyldig brukernavn, "invalidUNN".
  • I "Passord"-tekstboksen skriver du inn et ugyldig passord, "invalidPWD".

Lag et skript ved å ta opp

Lag et skript ved å ta opp
Trinn 5

  • Klikk på "Logg på"-knappen. Firefox bør ta deg til denne siden.

Lag et skript ved å ta opp

Trinn 6

Toggle opptaksknappen av for å stoppe opptaket. Skriptet ditt skal nå se ut som det som vises nedenfor.

Lag et skript ved å ta opp

Trinn 7

Nå som vi er ferdige med testskriptet vårt, skal vi lagre det i en testcase. I Fil-menyen velger du "Lagre testtilfelle". Alternativt kan du ganske enkelt trykke Ctrl+S.

Lag et skript ved å ta opp

Trinn 8

  • Velg ønsket plassering, og navngi deretter Testsak som "Ugyldig_pålogging".
  • Klikk på "Lagre" -knappen.

Lag et skript ved å ta opp

Trinn 9

Legg merke til at filen ble lagret som HTML.

Lag et skript ved å ta opp

Trinn 10) Gå tilbake til Selenium IDE og klikk på Playback-knappen for å kjøre hele skriptet. Selenium IDE skal kunne replikere alt feilfritt.

Lag et skript ved å ta opp

Introduksjon til Selenium Kommandoer – Selenesisk

  • Selenesiske kommandoer kan ha opptil maksimalt to parametere: mål og verdi.
  • Parametre er ikke nødvendig hele tiden. Det avhenger av hvor mange kommandoen trenger.

Typer kommandoer

handlinger Dette er kommandoer som samhandler direkte med sideelementer.

Eksempel: "klikk"-kommandoen er en handling fordi du samhandler direkte med elementet du klikker på.

"Type"-kommandoen er også en handling fordi du legger verdier inn i en tekstboks, og tekstboksen viser dem til gjengjeld. Det er en toveis interaksjon mellom deg og tekstboksen.

Tilbehør De er kommandoer som lar deg lagre verdier til en variabel.

Eksempel: "storeTitle"-kommandoen er en accessor fordi den bare "leser" sidetittelen og lagrer den i en variabel. Den samhandler ikke med noe element på siden.

Påstander De er kommandoer som bekrefter om en bestemt betingelse er oppfylt.

3 typer påstander

  • hevde. Når en "assert"-kommando mislykkes, stoppes testen umiddelbart.
  • Bekreft. Når en "bekreft"-kommando mislykkes, Selenium IDE logger denne feilen og fortsetter med testkjøringen.
  • Vent på. Før du fortsetter til neste kommando, vil "waitFor"-kommandoer først vente på at en viss tilstand blir sann.
    • Hvis tilstanden blir sann innenfor ventetiden, går trinnet over.
    • Hvis betingelsen ikke blir sann, mislykkes trinnet. Feil logges, og testkjøringen fortsetter til neste kommando.
    • Som standard er tidsavbruddsverdien satt til 30 sekunder. Du kan endre dette i Selenium Dialogboksen IDE-alternativer under kategorien Generelt.

Påstå vs. Bekreft inn Selenium

Påstå vs. Bekreft inn Selenium

Påstå vs. Bekreft inn Selenium

Vanlige kommandoer

Kommando Antall parametere Description
åpen 0 - 2 Åpner en side ved hjelp av en URL.
klikk/klikk og vent 1 Klikker på et spesifisert element.
type/type Keys 2 Skriver inn en sekvens med tegn.
verifyTitle/assertTitle 1 Sammenligner den faktiske sidetittelen med en forventet verdi.
verifyTextPresent 1 Sjekker om en bestemt tekst finnes på siden.
verifyElementPresent 1 Sjekker tilstedeværelsen av et bestemt element.
verifisertabell 2 Sammenligner innholdet i en tabell med forventede verdier.
waitForPageToLoad 1 Setter kjøringen på pause til siden er fullstendig lastet inn.
waitForElementPresent 1 Setter kjøringen på pause til det spesifiserte elementet blir til stede.

Lag et skript manuelt med Firebug

Nå skal vi gjenskape den samme testsaken manuelt ved å skrive inn kommandoene. Denne gangen må vi bruke Firebug.

Trinn 1

Lag et skript manuelt med Firebug

Trinn 2: Klikk på den øverste tomme linjen i redigeringsprogrammet.

Lag et skript manuelt med Firebug

Skriv "åpne" i kommando-tekstboksen og trykk Enter.

Lag et skript manuelt med Firebug

Trinn 3

  • Naviger Firefox til vår basis-URL og aktiver Firebug
  • på Selenium IDE Editor-panelet, velg den andre linjen (linjen under "åpne"-kommandoen) og opprett den andre kommandoen ved å skrive "assertTitle" i kommandoboksen.
  • Bruk gjerne autofullføringsfunksjonen.

Lag et skript manuelt med Firebug

Trinn 4

  • I Firebug utvider du tag for å vise tag.
  • Klikk på verdien av tag (som er "Velkommen: Mercury Tours") og lim den inn på Target feltet i editoren.

Lag et skript manuelt med Firebug

Trinn 5

  • For å lage den tredje kommandoen, klikk på den tredje tomme linjen i redigeringsprogrammet og skriv inn "skriv" på kommando-tekstboksen.
  • I Firebug klikker du på "Inspiser"-knappen.

Lag et skript manuelt med Firebug

Klikk på tekstboksen Brukernavn. Legg merke til at Firebug automatisk viser deg HTML-koden for det elementet.

Lag et skript manuelt med Firebug

Trinn 6 Legg merke til at tekstboksen Brukernavn ikke har en ID, men den har et NAME-attributt. Vi skal derfor bruke dens NAVN som lokalisator. Kopier NAME-verdien og lim den inn på Target felt i Selenium SDI.

Lag et skript manuelt med Firebug

Fortsatt i Target tekstboks, prefikset "brukernavn" med "navn =", som indikerer det Selenium IDE bør målrette mot et element hvis NAME-attributt er «brukernavn».

Lag et skript manuelt med Firebug

Skriv "invalidUN" i Verdi-tekstboksen til Selenium IDE. Testskriptet ditt skal nå se ut som bildet nedenfor. Vi er ferdige med den tredje kommandoen. Merk: I stedet for invalidUN, kan du skrive inn en hvilken som helst annen tekststreng. Men Selenium IDE skiller mellom store og små bokstaver, og du skriver inn verdier/attributter akkurat som i applikasjonen.

Lag et skript manuelt med Firebug

Trinn 7

  • For å lage den fjerde kommandoen, tast inn "skriv" på kommando-tekstboksen.
  • Igjen, bruk Firebugs "Inspiser"-knapp for å finne lokalisatoren for "Passord"-tekstboksen.

Lag et skript manuelt med Firebug

  • Lim inn NAME-attributtet ("passord") på Target feltet og prefiks det med "navn ="
  • Skriv "invalidPW" i Verdi-feltet i Selenium IDE. Testskriptet ditt skal nå se ut som bildet nedenfor.

Lag et skript manuelt med Firebug

Trinn 8

  • For den femte kommandoen, skriv "clickAndWait" i kommandotekstboksen i Selenium SDI.
  • Bruk Firebugs "Inspiser"-knapp for å finne lokalisatoren for "Logg på"-knappen.

Lag et skript manuelt med Firebug

  • Lim inn verdien av NAME-attributtet ("pålogging") på Target tekstboks og prefiks den med "navn =".
  • Testskriptet ditt skal nå se ut som bildet nedenfor.

Lag et skript manuelt med Firebug

Trinn 9: Lagre testsaken på samme måte som vi gjorde i forrige avsnitt.

Bruke Finn-knappen

Finn-knappen i Selenium IDE brukes til å verifisere om det vi hadde lagt inn i Target tekstboksen er faktisk det riktige UI-elementet.

La oss bruke Invalid_login-testsaken som vi opprettet i de forrige avsnittene. Klikk på en kommando med a Target oppføring, for eksempel den tredje kommandoen.

Bruke Finn-knappen

Klikk på Finn-knappen. Legg merke til at tekstboksen Brukernavn i Mercury Omvisningssiden blir uthevet et sekund.

Bruke Finn-knappen

Dette indikerer det Selenium IDE var i stand til å oppdage og få tilgang til det forventede elementet på riktig måte. Hvis Finn-knappen uthevet et annet element eller ikke noe element i det hele tatt, må det være noe galt med skriptet ditt.

Utfør kommando

Dette lar deg utføre en enkelt kommando uten å kjøre hele testsaken. Bare klikk på linjen du ønsker å utføre, og klikk deretter enten på "Handlinger > Utfør denne kommandoen" fra menylinjen eller bare trykk "X" på tastaturet.

Trinn 1) Sørg for at nettleseren din er på Mercury Turens hjemmeside. Klikk på kommandoen du ønsker å utføre. I dette eksemplet klikker du på "type | brukernavn | invalidUN"-linjen.

Utfør kommando

Trinn 2) Trykk "X" på tastaturet.

Trinn 3) Legg merke til at tekstboksen for brukernavn blir fylt med teksten "ugyldigUN"

Utfør kommando

Å utføre kommandoer på denne måten er svært avhengig av siden som Firefox vises for øyeblikket. Dette betyr at hvis du prøver eksemplet ovenfor med Google-hjemmesiden vist i stedet for Mercury Tours', vil trinnet ditt mislykkes fordi det ikke er noen tekstboks med et "brukernavn"-attributt på Googles hjemmeside.

Startpunkt

Et startpunkt er en indikator som forteller Selenium IDE hvilke linjer utførelsen vil starte. Hurtigtasten er "S".

Startpunkt

I eksemplet ovenfor vil avspillingen starte på den tredje linjen (skriv inn | passord | ugyldig PW). Du kan bare ha ett startpunkt i et enkelt testskript.

Startpunktet ligner på Utfør kommando ved at de er avhengige av siden som vises. Startpunktet vil mislykkes hvis du er på feil side.

Brytningspunkter

Knekkpunkter er indikatorer som forteller Selenium IDE hvor testen automatisk skal settes på pause. Hurtigtasten er "B".

Brytningspunkter

Den gule markeringen betyr at det gjeldende trinnet venter. Dette beviser det Selenium IDE har stoppet kjøringen på det trinnet. Du kan ha flere bruddpunkter i ett testtilfelle.

Trinn

Den lar deg utføre påfølgende kommandoer en om gangen etter å ha satt testsaken på pause. La oss bruke scenariet i forrige seksjon "Knekkpunkter."

Trinn

Før du klikker "Trinn."

Testsaken stopper ved linjen "clickAndWait | pålogging».

Trinn Etter å ha klikket på "Trinn."

«clickAndWait | login"-linjen kjøres og stopper til neste kommando (verifyTitle | Logg på: Mercury turer).

Legg merke til at neste linje er satt på pause selv om det ikke er noe bruddpunkt der. Dette er hovedformålet med Step-funksjonen – den utfører de påfølgende kommandoene en om gangen for å gi deg mer tid til å inspisere resultatet etter hvert trinn.

Viktige ting å merke seg når du bruker andre formater i kildevisning

Viktige ting å merke seg når du bruker andre formater i kildevisning

Selenium IDE fungerer bare bra med HTML - andre formater er fortsatt i eksperimentell modus. Det er IKKE tilrådelig å lage eller redigere tester ved å bruke andre formater i kildevisningen fordi det fortsatt er mye arbeid som trengs for å gjøre det stabilt. Nedenfor er de kjente feilene fra versjon 1.9.1.

  • Du vil ikke kunne utføre avspilling eller bytte tilbake til tabellvisning med mindre du går tilbake til HTML.
  • Den eneste måten å legge til kommandoer trygt på kildekoden er ved å ta opp dem.
  • Når du endrer kildekoden manuelt, vil alt gå tapt når du bytter til et annet format.
  • Selv om du kan lagre testsaken mens du er i kildevisning, Selenium IDE vil ikke kunne åpne den.

Den anbefalte måten å konvertere Selenese-tester på er å bruke alternativet "Eksporter testtilfelle som ..." under Fil-menyen, og ikke gjennom kildevisningen.

Oppsummering

  • Testskript kan opprettes enten ved å registrere eller skrive kommandoene og parameterne manuelt.
  • Når du oppretter skript manuelt, brukes Firebug for å finne lokalisatoren.
  • Finn-knappen brukes til å kontrollere at kommandoen har tilgang til riktig element.
  • Tabellvisning viser et testskript i tabellform mens Kildevisning viser det i HTML-format.
  • Å endre kildevisningen til et ikke-HTML-format er fortsatt eksperimentelt.
  • Ikke bruk kildevisningen til å lage tester i andre formater. Bruk eksportfunksjonene i stedet.
  • Parametre er ikke nødvendig hele tiden. Det avhenger av kommandoen.
  • Det er tre typer kommandoer:
    • Handlinger – samhandler direkte med sideelementer
    • Tilbehør – "leser" en elementegenskap og lagrer den i en variabel
    • Påstander – sammenligner en faktisk verdi med en forventet
  • Påstander har tre typer:
    • Påstå – ved feil blir ikke påfølgende trinn utført lenger
    • Bekreft - ved feil blir påfølgende trinn fortsatt utført.
    • WaitFor – går over hvis den angitte betingelsen blir sann innen tidsavbruddsperioden; ellers vil det mislykkes
  • De vanligste kommandoene er:
    • åpen
    • klikk/klikk og vent
    • type/type Keys
    • verifyTitle/assertTitle
    • verifyTextPresent
    • verifyElementPresent
    • verifisertabell
    • waitForPageToLoad
    • waitForElementPresent