understanding working with robot framework
Opplæringen forklarer hvordan du oppretter og utfører en grunnleggende testtilfelle i robotrammeverket. Du vil også lære om variabler og nøkkelord i Robot Framework:
Vi lærte om Grunnleggende om Robot Framework IDE - RIDE i vår forrige veiledning for å hjelpe oss i gang med å skrive testskripter ved hjelp av RIDE i dette Robot Framework-serien .
Opplæringen vil gi deg en forståelse av det grunnleggende i Robot Framework.
Vi skal lære om variabler og typen variabler som er tilgjengelige i Robot Framework. Vi får se hvordan du lager og bruker variabelen. Vi vil også forstå hva som er nøkkelordene sammen med de forskjellige typene. Vi vil også bli kjent med hvordan søkeord kan opprettes og brukes.
unix intervju spørsmål for java utviklere
Dessuten vil denne opplæringen også gi deg kunnskap om alternativene Oppsett og nedrivning i RIDE som er nyttige i utførelse av testsaker. Vi vil også lære om tags - en funksjon av RIDE som hjelper til med selektiv utførelse av testsaker.
Viktigst, vi skal skrive testskriptet (med og uten lokalisering) for noen få eksempler på testtilfeller. Vi vil lære hvordan disse testskriptene kjøres i Ride, og til slutt mot slutten av opplæringen lærer vi å se rapportene for de utførte testskriptene.
Vi vil avslutte opplæringen med noen nyttige lenker på Robot Framework som du når som helst kan referere til.
Hva du vil lære:
- Opprette og utføre en grunnleggende testtilfelle
- Forstå variabler i robotrammer
- Forstå nøkkelord i Robot Framework
- Bruke oppsett og nedbrytning i RIDE
- Bruke tagger i RIDE
- Opprette testsak ved hjelp av Locators
- Forståelse av søkeord og datadrevet tilnærming i robotrammer
- Få tilgang til rapporter i tur
- Konklusjon
- Anbefalt lesing
Opprette og utføre en grunnleggende testtilfelle
La oss nå lage en grunnleggende testsak i RIDE hvor vi skal åpne nettstedet google.com i Chrome-nettleseren, og så skal vi lukke nettleseren. Så la oss komme i gang med vår første testsak i Robot Framework ved bruk av Ride.
Klikk på ‘TestCase1’ og du kan se et rutenett (du bør være i 'Rediger' -fanen).
Følg trinnene nedenfor for å skrive koden:
- Skriv 'Åpne nettleser' (nøkkelord levert av Selenium Library) i den første cellen.
- Når du begynner å skrive, velger du ctrl + alt + mellomrom (eller ctrl + mellomrom) for å få hjelp til innhold.
- Skriv inn URL-en i neste celle Google .
- Skriv inn nettlesernavnet i den tredje cellen. Det er valgfritt å oppgi nettlesernavn.
- Skriv 'Close Browser' i den første cellen i neste rad.
La oss forstå hva vi nettopp har gjort.
- ‘Åpne nettleser’ er et nøkkelord levert av Selenium-biblioteket som vi importerte ovenfor i testsaken vår.
- Innholdshjelp hjelper oss med den eksakte syntaksen uten å måtte huske den.
- ‘Åpne nettleser’ tar det første argumentet som nettadressen til nettstedet vi vil åpne i nettleseren. Det andre argumentet er valgfritt, og det spesifiserer nettleseren vi vil bruke. Hvis dette ikke er nevnt, brukes Firefox som standard nettleser.
- “Close Browser” er igjen et Selenium Library-nøkkelord som lukker nettleseren vi åpnet.
Nå skal vi utføre denne koden ved å følge trinnene nedenfor:
- Klikk på 'Kjør' -fanen - Denne kategorien inneholder muligheten til å utføre testsaken.
- Merk av for “Autosave” - For å sikre at eventuelle ikke-lagrede endringer i testsaken lagres automatisk.
- Sjekk ‘TestCase1’ - For å la RIDE få vite hvilken testsak vi ønsker å utføre.
- Klikk på Start-knappen - For å starte utførelsen av testsaken.
Test saken blir utført vellykket. Nedenfor er skjermen som vi får etter vellykket gjennomføring av testsaken. Her kan vi se den totale tiden det tar å utføre test sammen med antallet av beståtte og mislykkede testsaker.
I tillegg til dette har vi også muligheten til å se Rapport og logg for den utførte testsaken. Vi får se det i de kommende opplæringene.
Forstå variabler i robotrammer
Akkurat som ethvert programmeringsspråk der vi bruker variabler, har vi også variabler i Robot Framework.
Hva er variabler?
Variabler er bare lagringssteder referert til med et navn som inneholder noe verdi.
Typer variabler
I Robot Framework har vi tre typer variabler:
- Skalar
- Liste
- Ordbok
I de neste to emnene skal vi se hvordan hver av de ovennevnte typer variabler kan opprettes og brukes.
Lage variabler
I Robot Framework er variablene ikke store og små bokstaver. Vi bør bruke store bokstaver for å referere til globale variabler (som brukes over hele settet med testtilfeller) og små bokstaver for å henvise til lokale variabler (som bare brukes i visse testtilfeller).
For å navngi en variabel, brukte vi en variabel-type-id (&,%, $, @) som går foran variabelnavnet skrevet i krøllete parenteser. La oss ta en titt på hvordan hver av de variable typene blir deklarert.
# 1) Skalarvariabel : En skalarvariabel er referert til som $ {Name}.
Her refererer $ til variabeltypen, dvs. skalarnavn - er variabelnavnet.
Som regel er dette plassert i krøllete bukseseler. En skalarvariabel kan leveres med hvilken som helst verdi, for eksempel en streng, et objekt, tall, lister, ordbøker eller egendefinerte objekter.
La oss tildele verdi 5 til den skalære variabelen ‘a’.
Følg trinnene nedenfor for å gjøre det:
TestCase1 (høyreklikk) -> Ny skala
Du får et popup-skjermbilde som vist nedenfor:
Skriv inn variabelnavnet i krøllete bukseseler som vist på øyeblikksbildet ovenfor. Oppgi verdien i tekstboksen ‘Verdi’ og legg til en kommentar hvis du vil.
Denne skalarvariabelen - $ {a} vi nettopp opprettet, kan nå sees i venstre panel.
# 2) Listevariabel : En listevariabel er referert til som @ {name}.
Her refererer @ - til variabeltypen, dvs. listenavn - er variabelnavnet. Som regel er dette plassert i krøllete bukseseler.
Listen gjør det mulig å lagre en Python-liste eller et lignende objekt. Robot Framework tillater ikke at strenger brukes som lister, men gjenstander som tupler eller ordbøker er tillatt.
La oss tildele verdiene ‘Hallo’, ‘Robot’ og ‘Rammeverk’ for å liste variabelen ‘b’. Følg trinnene nedenfor for å gjøre det:
TestSuite1 (høyreklikk) -> Ny listevariabel
Du får et popup-skjermbilde som vist nedenfor. I stedet for standard '4' i kolonnedråpen, velger vi '2'.
Følg trinnene nedenfor:
- Skriv inn variabelnavnet ‘b’ i krøllete bukseseler som vist i øyeblikksbildet nedenfor.
- Oppgi verdiene i tekstboksen ‘Verdi’.
- Legg til en kommentar (valgfritt).
- Klikk ‘OK’ for å lagre variabelen.
Hver av verdiene i listevariabelen er tilgjengelig i forhold til indeksen som regnes fra 0 for den første verdien i listen. For eksempel, for å referere til et rammeverk vil vi skrive det som @ {b} (2), da det er i posisjon 3 som indeksen ville være 2 for.
# 3) Ordboksvariabel : En ordbokvariabel er referert til som & {Name}.
Her refererer & - til variabeltypen, dvs. ordboknavn - er variabelnavnet. Som regel er dette plassert i krøllete bukseseler.
Ordbokvariabler brukes hovedsakelig når vi har en tabell med nøkkelverdipar. For eksempel når vi vil teste innlogging for et sett med ID og passord. Forskjellen mellom variablene List og Dictionary er hvordan de blir henvist, og vi skal se det fremover.
La oss lage en ordbokvariabel 'login' og tildele verdier: e-post og passord til den som vist nedenfor: 'testingrf19@gmail.com', '123'. Følg trinnene nedenfor for å gjøre det:
TestSuite1 (høyreklikk) -> Ny ordbokvariabel
Du får et popup-skjermbilde som vist nedenfor. I stedet for standard '4' i kolonnedråpen, velger vi '1'.
Følg trinnene nedenfor:
- Skriv inn variabelnavnet ‘login’ i de krøllete klammeparentesene som vist i øyeblikksbildet nedenfor.
- Oppgi verdiene i tekstboksen ‘Verdi’.
- Legg til en kommentar (valgfritt).
- Klikk ‘OK’ for å lagre variabelen.
I motsetning til listevariabler som bruker indeksen for å referere til de enkelte verdiene i den, bruker ordboksvariabler en mer tydelig måte å referere til verdiene på. Som i tilfelle ovenfor vil vi bruke & {login} (e-post) og & {login} (passord). Ser dette ikke helt selvforklarende ut?
Disse opprettede variablene er også synlige i ‘TestSuite1’ (fanen Rediger).
Bruke variabler
Vi skal nå se hvordan vi kan bruke disse variablene i testtilfellet vårt. Vi bruker testtilfellet som ble opprettet tidligere, og erstatter URL-en som ble brukt med en variabel som lagrer URL-en i stedet. Så la oss lage en skalarvariabel kalt ‘URL’ og lagre verdien Google i det.
Vi vil nå erstatte URL-en med variabelen i koden vår. Siden dette er en skalarvariabel, vil det bli referert til som $ {URL}. Testsaken vår skal nå se ut som vist nedenfor:
La oss kjøre dette testtilfellet og se om variabelen ‘URL’ blir erstattet med riktig verdi. Ja! Testsaken vår blir utført vellykket. Google com åpnes i nettleseren, og deretter lukkes nettleseren. Resultatet viser at det var en suksess.
Det grønne symbolet ved siden av testsaksnavnet på venstre panel og PASS på høyre panel viser at utførelsen av testsaken var vellykket.
Slik bruker vi variabler i en testtilfelle. Fordelen med å bruke variabler er synlig når vi bruker samme verdi flere steder. Hver gang det er en endring i verdien, trenger vi bare å erstatte verdien på variabelen, og det samme vil gjenspeiles på hvert sted der variabelen har blitt brukt.
På samme måte kan vi bruke listen så vel som ordbokvariabelen etter behov i testsakene våre.
Forstå nøkkelord i Robot Framework
Hva er nøkkelord?
Nøkkelord som navnet antyder ('Key' + 'word') er et ord som fungerer som en nøkkel til noe som ikke er synlig. La oss ganske enkelt forstå at hvis jeg har en oppgave med 10 trinn som skal gjøres, og jeg nevner de 10 trinnene og henviser dem med et navn, er navnet et nøkkelord.
Typer nøkkelord
Robot Framework tilbyr to typer nøkkelord:
- Bibliotek nøkkelord : Disse søkeordene er også kjent som søkeord på lavt nivå. Disse blir gjort tilgjengelige av bibliotekene som brukes med Robot Framework (innebygde og eksterne biblioteker). For eksempel, vi har et nøkkelord 'Logg til konsoll' som tilbys av det innebygde biblioteket, og 'Åpne nettleser' er et nøkkelord levert av Selenium-biblioteket.
- Brukerdefinerte nøkkelord : Disse er også kjent som søkeord på høyt nivå. De defineres av brukeren. Brukerdefinerte nøkkelord kan også inneholde andre biblioteksøkeord og / eller andre handlinger.
Opprette nøkkelord
Denne opplæringen vil forklare måtene å lage brukerdefinerte nøkkelord på.
Høyreklikk ‘TestSuite1’ og velg ‘Nytt brukernøkkelord’ .
Du vil få en skjerm som dukker opp som nedenfor. La oss lage et nøkkelord for å åpne Googles nettsted. Så vi ville ha bare ett nøkkelord for å utføre oppgaven til testsaken som vi hadde laget.
Åpne testsaken du opprettet, og se på trinnene du la til. Vi hadde åpnet google.com i Chrome og lukket nettleseren.
La oss gi navnet ‘Åpne google’ til nøkkelordet vårt og klikk ‘Ok’.
Nøkkelordet er definert, og nå vil handlingene som må utføres skrives i dette nøkkelordet. Så klikk ‘ Åpne Google ’ og skriv de samme trinnene som vi skrev i TestCase1.
Som du ser nedenfor, stikkordet ' Opengoogle ”Ville åpne Google com i Chrome-nettleseren, og avslutt nettleseren.
Bruke nøkkelord
Vi har nå definert nøkkelordet vårt “ Åpne Google ”. Det er ganske enkelt å bruke det i testtilfellet vårt. Ta først en titt på den opprinnelige testsaken vår som vi hadde laget for å åpne google nedenfor.
Vi skal nå erstatte denne koden med nøkkelordet. Du vil legge merke til at når du begynner å skrive nøkkelordet og åpner innholdsassistenten, vil dette nøkkelordet også være synlig i listen som dukker opp. Se på skjermbildet nedenfor.
Når den ble erstattet, ville vår TestCase1 se enkel ut som vist nedenfor:
La oss utføre dette og se om det fungerer som forutsatt.
Ja! prøvesaken går og vi har forventet resultat.
Bruke oppsett og nedbrytning i RIDE
Akkurat som navnet antyder, er Setup settet med instruksjoner / nøkkelord som skal utføres som første forberedelse for å utføre den faktiske testsaken. Som et eksempel, generelt for enhver utførelse av testsaker, vil vårt grunnleggende krav være å åpne en nettleser. Så vi kan alltid legge til dette trinnet for å åpne nettleseren som en installasjonsaktivitet.
På samme måte er nedrivningen settet med instruksjoner / nøkkelord som skal kjøres på slutten av en testsakskjøring. Som et eksempel, når vi er ferdig med å utføre en testsak, vil vi lukke nettleseren. Så vi kan alltid legge til dette trinnet for å lukke nettleseren som en nedbrytningsaktivitet.
Oppsett og nedrivning kan erklæres på:
- Test suite nivå: Når deklareres på testpakke nivå, vil installasjonsinstruksjonene utføres før noen av testtilfellene i den testpakke utføres. På samme måte vil nedrivning som er erklært på testserienivå bli henrettet etter at noen av testsakene i den testserien er utført.
- Test case level : Når deklareres på et testsaksenivå, vil installasjonsinstruksjonene bli utført før utførelsen av testsakene i den testserien utføres. På samme måte vil nedrivning som er erklært på testsaksenivå bli henrettet etter at testsaken er utført.
La oss nå se hvordan vi legger til en oppsettaktivitet på Test Case-nivå.
- Opprett TestCase2.
- Klikk på “Rediger” -knappen for oppsett, rett under Innstillinger i høyre panel.
- Skriv inn nøkkelordet 'Åpne nettleser' i vårt tilfelle. Du kan også bruke innholdshjelpen her.
- Argumenter kan sendes sammen med nøkkelordet ved å skille dem med et '|' rørtegn.
- Klikk ‘OK’.
La oss nå se hvordan vi legger til en nedrivningsaktivitet på Test Case-nivå.
- Klikk TestCase1
- Klikk på Rediger-knappen for å rive ned, rett under Innstillinger i høyre panel.
- Skriv inn nøkkelordet 'Lukk nettleser' i vårt tilfelle. Du kan også bruke innholdshjelpen her.
- Klikk ‘OK’.
Nå som vi har flyttet begge trinnene i testsaken som oppsett og nedrivning av aktivitet, la oss legge til ett trinn til i testsaken slik at vi kan utføre og sjekke resultatet. La oss vise “Hei” på konsollen. Nøkkelordet vi har brukt er ‘Logg’ som er fra det innebygde biblioteket.
TestCase2 vil se ut som vist nedenfor:
Når den kjøres, blir Setup først utført, etterfulgt av å logge ‘Hello’ på konsollen, og til slutt blir nedbrytningsaktiviteten utført og nettleseren lukkes.
Bruke tagger i RIDE
Merking brukes når vi ønsker å gruppere et sett med testtilfeller enten for å utføre dem eller for å unngå utførelse. Vi grupperer hovedsakelig tester under regresjon, røyk og sunnhet. Eller det kan være i scenarier der noen viktige funksjoner må testes gjentatte ganger.
For å forstå hvordan koder blir opprettet og brukt, la oss skrive to enkle testtilfeller - 'TestCase3' og 'TestCase4'. Koden for dette er som vist nedenfor. Vi har brukt nøkkelordene, ‘Logg på konsoll’ som er fra Builtin-biblioteket.
Prøvesak 3
Prøvesak 4
Følg trinnene nedenfor for å merke disse testtilfellene:
- Klikk på Rediger-knappen for 'Tagger'.
- På popup-vinduet skriver du inn et navn på koden, sier Case3.
- Klikk 'OK'
Begge testsakene har nå taggen ‘Case3’. La oss se hvordan dette kan brukes.
Anta at vi bare vil utføre testcase3 og testcase4.
- Gå til RUN-fanen
- Merk av i ruten 'Kjør bare tester med disse kodene'
- I tekstboksen nedenfor skriver du inn ‘Case3’.
- Klikk på startknappen.
Merk at vi ikke valgte noen testtilfelle, men etter testutførelsen vil du se at bare 'TestCase3' og 'TestCase4' har blitt utført.
På samme måte har vi også muligheten til å hoppe over bestemte merkede testsaker ved hjelp av ‘Hopp over tester med disse kodene’ og nevner kodenavnet.
Vi har også muligheten til å lage koder dynamisk i løpetid ved hjelp av nøkkelordet “Sett tag” , på samme måte kan vi også fjerne koder på kjøretid ved hjelp av nøkkelordet “Fjern taggen” .
Håper denne opplæringen har gitt deg en klar ide om å lage og bruke tagger nå.
Opprette testsak ved hjelp av Locators
Vi opprettet en veldig grunnleggende testsak som innebar å skrive noe på konsollen eller bare åpne en nettleser. La oss nå skrive prøvesaker som involverer bruk av lokatorer.
Å teste et nettsted eller et hvilket som helst program innebærer å finne elementene. Når vi ønsker å utføre en handling på et hvilket som helst element, må vi kjenne lokalisereren. Normalt er 'id' eller 'navn' attributtene til et element som brukes til å identifisere det på en side og dermed utføre en handling på det ved hjelp av nøkkelord.
Vi åpner en nettleser og søker etter det offisielle nettstedet til Robot Framework og åpner det.
La oss komme i gang og skrive koden for dette.
- Opprett ‘TestCase5’ i TestSuite1.
- Åpne nettleser (Chrome).
- Deretter finner du lokaliseringen av tekstboksen for google-søk.
Chrome-innstillinger -> Verktøy -> Utviklerverktøy .
Det samme kan også nås ved hjelp av Ctrl + Shift + I.
- Når utviklerverktøyet er åpent, klikker du på ikonet for lokaliseringselement som angitt nedenfor.
- Hold den over tekstfeltet til Google-søk til den blir uthevet, og klikk over den. Du vil legge merke til at koden relatert til søkeboksen blir uthevet på høyre panel.
- Fra koden vil vi bruke navnet = ’q’ som lokalisator.
- ‘Inngangstekst’ er Selenium-nøkkelordet som skal brukes til å skrive inn tekst i google-søkeboksen.
- Trykk på Enter-tasten for å få søkeresultatene.
Slik vil koden vår se ut. Det ser ganske enkelt ut !! Er det ikke?
Det handler om praksis. Alt vi trenger er å kunne huske hvilket nøkkelord som er tilgjengelig for å automatisere en bestemt handling. Så jo mer du automatiserer testene dine, jo mer komfortabelt vil du jobbe med dette rammeverket.
Resultatet av ovennevnte testsak etter utførelse er som vist nedenfor. Kromleseren er åpen nedenfor ved å vise søkeresultatene til ‘Robot Framework’.
Forståelse av søkeord og datadrevet tilnærming i robotrammer
Når du skriver en testsak i Robot Framework, følger vi en av nedenstående tilnærminger:
- Søkeorddrevet tilnærming: Når vi bruker nøkkelord når vi skriver testtilfellene, kaller vi det en nøkkelorddrevet tilnærming. Den søkeorddrevne tilnærmingen forbedrer lesbarheten i testsaken. Vi har allerede sett hvordan søkeord kan opprettes og brukes i en testtilfelle.
- Datadrevet tilnærming : Denne tilnærmingen følges hovedsakelig når vi vil teste logikk for forskjellige dataverdier. I denne tilnærmingen opprettes en mal for et nøkkelord på høyt nivå, og argumentene til dette nøkkelordet sendes fra testsaken som er dataverdien som testsaken må utføres for.
Hvordan vi bruker denne tilnærmingen i testtilfellene er det vi vil se nedenfor når vi lager et nytt nøkkelord.
La oss lage en testcase for å søke etter forskjellige testautomatiseringsverktøy / rammeverk - Robot Framework, J-meter, Selen, etc.
Test saken vil bare inneholde dataene, i dette tilfellet søkeordene som vil bli sendt som argumenter til malen. Malen vil inneholde søkeordet på høyt nivå som vil ha den faktiske koden som skal utføres. Søkeverdiene ville bli skrevet i testsaken.
Med denne korte forståelsen, la oss lage malen ‘Google Search’ ved å følge trinnene nedenfor:
- Lag TestCase6 som forklart i emnet “Opprette et prosjekt, Test Suite og en Test Case in Ride”.
- Klikk på 'Rediger' for mal og skriv inn et navn. ‘Google Search’ i vårt tilfelle.
- Vi vil bruke den samme koden som i TestCase5, med den eneste forskjellen at teksten som skal søkes vil bli sendt som et argument som påpekt nedenfor.
- Dette argumentet skal også nevnes i tekstboksen Argument. Så klikk Rediger i tekstboksen Argumenter, skriv inn argumentet og klikk ‘OK’.
- La oss nå komme tilbake til TestCase6 og legge inn dataene.
- Slik ser skjermen ut etter at testutførelsen er fullført.
Du vil merke at fem forekomster av Chrome-nettleseren har åpnet, og hver vil ha søkeresultatene for de fem forskjellige testautomatiseringsverktøyene vi har søkt på.
Vi håper denne testsaken har gitt deg god klarhet i datadrevet tilnærming. Når du prøver deg på flere slike eksempler, vil denne tilnærmingen virke ganske enkel for deg.
Få tilgang til rapporter i tur
Nedenfor er skjermbildet etter at TestCase6 er utført. Den gir to alternativer 'Rapporter' og 'Logg' som angitt nedenfor. Det gir også den fullstendige lenken for å få tilgang til logg og rapport.
Rapportere - TestCase6 utførelsesresultat
protokoller som brukes i hvert lag av osi-modellen
Den gir en sammendragsrapport over den / de testseriene som er utført. Når du klikker på Test-pakken, viser den detaljene i testpakken, Test case-wise. Når vi ytterligere klikker på testsaken, åpner den detaljene i testsaken som kalles Loggen.
Logg - TestCase6 utførelsesresultat.
Logg gir en detaljert rapport som er praktisk for hele prosjektet.
I tillegg til ikonene for rapport og logg. Vi har også URL-ene til disse som kan kopieres og åpnes direkte i nettleseren. Det er et kjent problem at noen ganger etter å ha kjørt en testtilstand, er ikoner for 'Rapporter', 'Logg' deaktivert. I et slikt scenario kan disse koblingene kopieres og åpnes i nettleseren for å se rapporten.
URL-en er stedet i den lokale maskinen der rapportene lagres. Hver gang vi utfører en testtilfelle, blir denne plasseringen oppdatert og den nye genererte rapporten blir lagret på dette stedet.
Robot Framework - Nyttige lenker
Konklusjon
Vi håper som nybegynner ville denne opplæringen ha gitt deg god kunnskap om bruken av Robot Framework som et testautomatiseringsverktøy.
I denne veiledningen lærte vi om oppretting av variabler og nøkkelord. Vi så hvordan man skriver testskripter ved hjelp av søkeorddrevet og datadrevet tilnærming.
Vi gjorde også en praktisk testskriptutførelse. Opplæringen ga et innblikk i å se de detaljerte testresultatene via logg og rapporter. I tillegg til det er viktige nettadresser relatert til Robot Framework også delt.
'Øvelse gjør en mann perfekt', så ta dette verktøyet i bruk så mye du kan uten forsinkelse, slik at du gradvis kan bli trygg på å bruke det.
Glad lesning !!
PREV Opplæring | FØRSTE veiledning
Anbefalt lesing
- Robot Framework Tutorial - Funksjoner og programvareinstallasjon
- Komme i gang med RIDE - Robot Framework IDE
- TestNG Tutorial: Introduksjon til TestNG Framework
- BDD (Behavior Driven Development) Framework: A Complete Tutorial
- D3.js Tutorial - Data Visualization Framework For Beginners
- Jasmine Framework Tutorial Inkludert Jasmine Jquery med eksempler
- Java Collections Framework (JCF) Tutorial
- Karate Framework Tutorial: Automated API Testing With Karate