Agurk Selen Tutorial - Ved hvordan man udfører test af websteder



Denne artikel om Agurk Selen Tutorial hjælper dig med at forstå, hvordan agurkværktøjet fungerer. Yderligere vil du også lære at integrere agurk med selen og køre forskellige testsager.

Ingen tvivl om det er et af de fantastiske værktøjer inden for , men det kan virke lidt svært for en ikke-teknisk person at forstå, hvordan den fungerer, på grund af kodens kompleksitet. For at lette denne opgave kommer agurk med i spillet, hvilket gør den komplekse kode enkel og let at forstå. Men hvordan gør det præcis det? Jeg vil fortælle dig alt om det gennem denne artikel om Agurk Selen Tutorial.

Nedenfor er emnerne i denne artikel:





Introduktion til agurk

Agurkelogo - Agurk Selen Tutorial - Edureka

er en testmetode / -værktøj, der understøtter Behavior Driven Development (BDD). Det giver en måde at skrive tests, som alle kan forstå, uanset deres omfang af teknisk viden.



Det forklarer applikationens opførsel i en simpel engelsk tekst ved hjælp af Agurk Sprog. Jeg håber, at du får et glimt af hvad der er agurk. Lad os nu gå videre og forstå nogle af de fakta, der skildrer behovet for agurk i en testramme.

Hvorfor agurk?

Agurk er godt et af de mest populære værktøjer på grund af nedenstående årsager:

  1. Agurk er åben kilde og dermed er det gratis at bruge.
  2. Når du bruger Agurk, kan du skrive din testskripter på flere sprog som f.eks , Rubin , .NET, , etc.
  3. Det integreres også med , Ruby on Rails , Watir og andet webbaseret test værktøjer.
  4. Agurk er en af ​​de mest anvendte BDD værktøjer.

Dette er nogle af de unikke funktioner, der gør agurk nyttig til test af et websted. Nu hvor du ved, hvad der er agurk, og hvorfor har du brug for det, lad os forstå en af ​​de unikke egenskaber ved agurk, der gør det let for en ikke-tekniker at forstå testsagerne.



Behavior Driven Development (BDD)

I meget enkle vendinger, BDD eller Adfærdsdrevet udvikling er en teknik, hvor dine specifikationer eller testsager er skrevet på almindelige engelske sætninger. Med denne tilgang finder de ikke-tekniske teammedlemmer det let at forstå strømmen og samarbejde mere i processen med softwareudvikling.

Lad os forstå dette ved hjælp af et simpelt eksempel. Overvej et scenario, hvor du vil teste Twitter-webstedet. Et af testscenarierne er at verificere loginoplysningerne. Med BDD kan du skrive dette testscenarie i dette format:

Funktion: Test Twitter-røgscenarie Scenarie: Test login med gyldige legitimationsoplysninger givet Åbn firefox og start applikationen Når jeg indtaster gyldigt brugernavn og gyldigt kodeord, så skal brugeren kunne logge ind

I ovenstående eksempel har jeg netop skrevet et par udsagn på enkel engelsk for at definere scenarierne. Jeg vil give mere indsigt i dette scenario og dets implementering i den senere del af denne artikel. For nu, lad os gå videre i artiklen om agurk selen tutorial og lære de grundlæggende ting i selen.

Introduktion til selen

er den foretrukne værktøj, når det kommer til automatisering af de tests, der udføres på webbrowsere. Det er kun nyttigt til test af webapplikationer. Enhver desktop (software) applikation eller mobilapplikation kan ikke testes ved hjælp af Selenium. Det er meget nyttigt at skrive funktionelle testsager. Det giver også pålidelig ydeevne med ' n ' antal testsager, og det er naturligvis det bedst egnede automatiseringsværktøj til webapplikationer.

Nu hvor du ved, hvad der er selen, lad os gå videre i denne artikel om Agurk Selen Tutorial og forstå hvorfor bruge agurk med selen?

lagerklasse c ++

Hvorfor bruge agurk med selen?

Mange organisationer bruger til funktionel og regressionstest .Selen og agurk er en fantastisk kombination, når det kommer til automatisering af webapplikationer, da agurk giver dig mulighed for hurtigt at skrive dine tests på engelsk-lignende sprog, og Selen giver dig mulighed for at køre på forskellige kombinationer af browsere.

Agurk værktøj er baseret påAdfærd drevet udvikling ramme, der fungerer som broen imellemSoftwareingeniør og forretningsanalytiker og også mellemManuel test og udviklere.

Når du bruger Selen med agurk til testautomatisering, skrives testene i funktionsfiler, der kan forstås af forskellige interessenter i et smidigt miljø såsom forretningsanalytikere. Agurk kommer også med sin evne til at understøtte flere scripts og programmeringssprog, og JUnit bruges til at udføre disse scripts og generere output.

Efter at have forstået dette, lad os nu se de forskellige trin til oprettelse af agurkapplikation og køre testcases.

Trin til oprettelse af agurkapplikation

De forskellige trin involveret i oprettelsen af ​​en agurkapplikation er som følger:

  1. Download Jar-filerne af agurk og selen, og konfigurer byggestien.
  2. Tilføj agurk plugin fra Eclipse Marketplace.
  3. Opret en funktionsfil, og tilføj scenarier.
  4. Implementer trinene til scenarierne.
  5. Skriv løberklassen, og udfør koden.

Lad os nu forstå hvert af disse trin i detaljer.

Trin 1: Download agurk og selen krukke filer

Agurk interagerer faktisk ikke med browseren og udfører handlinger på det testede websted. Interagerer med hjemmesiden er handlingen, der er udført af . På grund af denne grund du får brug for at downloade Agurk samt Selen Webdriver jar-filer . Hvis du ønsker at vide, hvordan du installerer Selenium på dit system, kan du tjekke denne artikel på Nedenfor er listen over jar-filer til agurk.

  • Agurk-kerne
  • Agurk-html
  • dækningskodedækning
  • Agurk-java
  • Agurk-junit
  • Agurk-jvm-deps
  • Agurk-rapportering
  • Hamcrest-kerne
  • Agurk
  • Junit

Når du har downloadet disse jar-filer fra Maven Repository , kan du konfigurere byggestien til dit projekt og tilføje alle .krukke filer og biblioteker som vist i nedenstående snapshot.

Trin 2: Det næste trin er at installere agurk på din formørkelse. For det skal du gå til Hjælp -> Formørkelsesmarked -> Søg agurk og installer Agurk og Naturals på din formørkelse. Nedenstående øjebliksbillede viser det samme.

Trin 3: Når du har konfigureret agurk, er det næste trin at oprette en funktionsfil. Først skal du oprette en ny kildemappe og derefter tilføje en funktionsfil som vist nedenfor.

Dernæst skal du angive navnet på funktionsfilen som vist nedenfor.

Når du har oprettet funktionsfilen, kan du skrive scenarierne som vist i nedenstående kode.

Testscenarie I:

Funktion: Nulstil funktionalitet på login-siden i applikationsscenarie: Bekræftelse af nulstillingsknap givet Åbn Firefox, og start applikationen Når du indtaster brugernavn og adgangskode, nulstil derefter legitimationsoplysningerne

Trin 4: Derefter skal du implementere scenarierne ved hjælp af trindefinitioner. I nedenstående kode har jeg implementeret metoderne til det scenarie, som jeg har skrevet i funktionsfilen.

pakke stepDefinitions import cucumber.api.java.en.Givet import cucumber.api.java.en.Indfør derefter cucumber.api.java.en.Når offentlig klasse trin {@Given ('^ Åbn Firefox og start applikationen $' ) offentligt ugyldigt open_the_Firefox_and_launch_the_application () kaster Throwable {System.out.println ('Dette trin åbner Firefox og starter applikationen.')} @When ('^ Indtast brugernavn og adgangskode $') offentlig tomrum enter_the_Username_and_Password () kaster Throwable { System.out.println ('Dette trin skal du indtaste brugernavn og adgangskode på login-siden.')} @Then ('^ Reset the credential $') public void Reset_the_credential () throw Throwable {System.out.println ('This step klik på knappen Nulstil. ')}}

Trin 5: Nu er det sidste trin at skabe ' løberklasse ' og udføre programmet. Dybest set skal din projektstruktur se ud som vist i nedenstående øjebliksbillede.

I ovenstående snapshot, ' Runner.java ' er en eksekverbar fil. Lad os nu kode denne fil og forstå, hvordan den fungerer.

pakke Runner import org.junit.runner.RunWith import cucumber.api.CucumberOptions import cucumber.api.junit.Cucumber @RunWith (Cucumber.class) @CucumberOptions (features = 'features', lim = {'stepD'}) offentlig klasse Løber { }

I ovenstående kode har jeg '@CucumberOptions 'og angiv pakkens navn for både funktionsfil og Runner-fil. Så det implementerer metoderne og kører koden. Når du kører programmet, viser det metoderne fra trindefinitionen. Din produktion skal se ud som vist nedenfor:

Dette trin åbner Firefox og starter applikationen. Dette trin indtaster brugernavn og adgangskode på login-siden. Dette trin klik på knappen Nulstil. 1 Scenarier (32m1 bestået) 3 trin (32m3 bestået) 0m0.185s

Så dette er, hvordan du skal skrive alle filerne og udføre programmet.

Test Scenario II:

Lad os nu forstå endnu et scenario, hvor jeg har integreret selen med agurk.Overvej et scenario, hvor du vil teste Twitter-webstedet. Et af testscenarierne verificerer loginoplysningerne. Med BDD kan du skrive dette testscenarie i dette format:

Funktion: Test Twitter-røgscenarie Scenarie: Test login med gyldige legitimationsoplysninger givet Åbn firefox og start applikationen Når jeg indtaster gyldigt brugernavn og gyldigt kodeord, så skal brugeren kunne logge ind

Lad os derefter skrive trindefinitionsklassen for at implementere alle scenarierne.

pakke stepD import java.util.concurrent.TimeUnit import org.openqa.selenium.By import org.openqa.selenium.WebDriver import org.openqa.selenium.firefox.FirefoxDriver import agurk.api.java.da.Givet import agurk.api .java.en.Derefter importerer agurk.api.java.en.Når offentlig klasse SmokeTest {WebDriver driver @Given ('^ Åbn firefox og start applikationen $') offentlig ugyldig open_the_firefox_and_start_application () kaster Throwable {System.setProperty ('webdriver .gecko.driver ',' C: geckodriver-v0.23.0-win64geckodriver.exe ') driver = ny FirefoxDriver () driver.manage (). timeouts (). implicitWait (10, TimeUnit.SECONDS) driver.get (' https : //twitter.com/login ')} @When (' ^ Jeg indtaster gyldigt brugernavn og gyldig adgangskode $ ') offentligt tomrum I_enter_valid_username_and_valid_password () smider Throwable {driver.findElement (By.xpath (' // input [@ placeholder = 'Telefon, e-mail eller brugernavn'] ')). SendKeys (' dit_brugernavn ') driver.findElement (By.xpath (' // div [@ class = 'clearfix field'] // input [@ placeholder = 'Password'] sendKeys ('yo.')) ur_password ')} @Then (' ^ bruger skal kunne logge ind med succes $ ') offentlig ugyldig bruger_should_be_able_to_login_successfully () kaster Throwable {driver.findElement (By.xpath (' // button [@ class = 'send EdgeButton EdgeButton - primary) EdgeButtom - medium ']')). Klik ()}}

I ovenstående program har jeg brugt for at starte Firefox-browseren og brugedriver.get ()det navigerer gennem Twitter-login-siden. Derudover finder den tekstfeltet brugernavn og adgangskode ved hjælp af og indtast de gyldige legitimationsoplysninger. Endelig logger den ind med succes og kører testcases. Du skal udføre løberen som en JUnit-test for at vide, om testene er bestået eller mislykkedes.

Nedenfor viser snapshot programmets output.

sorteringsarray c ++

Sådan skal du skrive alle filerne og udføre programmet. Så det handlede kun om Agurk Selen Tutorial. Jeg håber, du forstod begreberne og hjalp med at tilføje værdi til din viden. Nu, hvis du ønsker at få mere indsigt i Selen, kan du tjekke vores .

Hvis du fandt denne “Cucumber Selenium Tutorial ”Relevant, tjek den af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i artiklen om agurk selen tutorial, og vi vender tilbage til dig.