Gurkselen-handledning - Vet hur man utför webbplatstestning



Den här artikeln om Cucumber Selenium Tutorial hjälper dig att förstå hur gurkverktyget fungerar. Vidare kommer du också att lära dig att integrera gurka med selen och köra olika testfall.

Ingen tvekan om det är ett av de fantastiska verktygen inom , men det kan verka lite svårt för en icke-teknisk person att förstå hur den fungerar på grund av kodens komplexitet. För att underlätta den här uppgiften kommer Gurka med i spelet, vilket gör den komplexa koden enkel och lätt att förstå. Men hur gör det exakt det? Jag kommer att berätta allt om det genom den här artikeln om Cucumber Selenium Tutorial.

Nedan följer ämnena i den här artikeln:





Introduktion till gurka

Gurka-logotyp - Gurkselen-handledning - Edureka

är ett testmetod / verktyg som stöder Behavior Driven Development (BDD). Det ger ett sätt att skriva tester som alla kan förstå, oavsett omfattning av teknisk kunskap.



Det förklarar applikationens beteende i en enkel engelsk text med Gurka språk. Jag hoppas att du får en glimt av vad som är gurka. Låt oss nu gå vidare och förstå några av de fakta som visar behovet av gurka i ett testramverk.

Varför gurka?

Tja, gurka är ett av de mest populära verktygen på grund av anledningarna som anges nedan:

  1. Gurka är öppen källa och därmed är det gratis att använda.
  2. När du använder Gurka kan du skriva din testskript på flera språk som , Rubin , .NET, , etc.
  3. Det integreras också med , Ruby on Rails , Watir och annat webbaserad testning verktyg.
  4. Gurka är en av de mest använda BDD verktyg.

Det här är några av de unika funktionerna som gör Gurka till hjälp för att testa en webbplats. Nu när du vet vad som är gurka och varför behöver du det, låt oss förstå en av de unika egenskaperna hos gurka som gör det enkelt för en icke-tekniker att förstå testfallet.



Behavior Driven Development (BDD)

I mycket enkla termer, BDD eller Beteendedriven utveckling är en teknik där dina specifikationer eller testfall skrivs på vanlig engelska som meningar. Med detta tillvägagångssätt har de icke-tekniska teammedlemmarna det lätt att förstå flödet och samarbeta mer i utvecklingen av programvara.

Låt oss förstå detta med hjälp av ett enkelt exempel. Tänk på ett scenario där du vill testa Twitter-webbplatsen. Ett av testscenarierna är att verifiera inloggningsuppgifterna. Med BDD kan du skriva detta testscenario i det här formatet:

Funktion: Testa Twitter rökscenario Scenario: Testa inloggning med giltiga referenser ges Öppna firefox och starta applikationen När jag anger giltigt användarnamn och giltigt lösenord ska användaren kunna logga in framgångsrikt

I exemplet ovan har jag precis skrivit några uttalanden på enkel engelska för att definiera scenarierna. Jag kommer att ge mer inblick i detta scenario och dess implementering i den senare delen av den här artikeln. Tills vidare, låt oss gå vidare i artikeln Cucumber Selenium Tutorial och lära oss grunderna för Selen.

Introduktion till selen

är det föredragna verktyg när det gäller att automatisera de tester som utförs på webbläsare. Det är endast användbart för testning av webbapplikationer. Alla stationära applikationer (programvaror) eller mobilappar kan inte testas med Selenium. Det är mycket bra att skriva funktionella testfall. Det ger också tillförlitlig prestanda med n ' antal testfall och det är uppenbarligen det bästa lämpliga automatiseringsverktyget för webbapplikationer.

Nu när du vet vad som är selen, låt oss gå vidare i den här artikeln om gurkselen-handledning och förstå varför använda gurka med selen?

Varför använda gurka med selen?

Många organisationer använder för funktionell och regressionstestning .Selen och gurka är en bra kombination när det gäller automatisering av webbapplikationer, eftersom gurka låter dig skriva dina tester snabbt på engelska-liknande språk och Selen låter dig köra på olika webbläsarkombinationer.

hitta längden på array-javaskriptet

Gurkaverktyget är baserat påBeteendedriven utvecklingsram som fungerar som bron mellanSoftware Engineer och Business Analyst och även mellanManuell testare och utvecklare.

När du använder Selenium med gurka för testautomatisering skrivs tester i funktionsfiler som kan förstås av olika intressenter i en smidig miljö som affärsanalytiker. Gurka kommer också med sin förmåga att stödja flera skript och programmeringsspråk och JUnit används för att utföra dessa skript och generera utdata.

Efter att ha förstått detta, låt oss nu se de olika stegen för att skapa gurkaprogram och köra testfall.

Steg för att skapa gurkaprogram

De olika stegen som är involverade i skapandet av en gurkaapplikation är som följer:

  1. Ladda ner Jar-filerna med gurka och selen och konfigurera byggvägen.
  2. Lägg till gurka-plugin från Eclipse Marketplace.
  3. Skapa en funktionsfil och lägg till scenarier.
  4. Implementera stegen för scenarierna.
  5. Skriv löparklassen och kör koden.

Låt oss nu förstå vart och ett av dessa steg i detalj.

Steg 1: Ladda ner gurka- och selenburkfiler

Gurka interagerar faktiskt inte med webbläsaren och utför åtgärder på webbplatsen som testas. Interagerar med webbplatsen är åtgärden som är utförs av . Av denna anledning du kommer behöva att ladda ned Gurka samt Selen Webdriver jar-filer . Om du vill veta hur du installerar Selenium på ditt system kan du läsa den här artikeln på Nedan är listan över burkfiler för gurka.

  • Gurka-kärna
  • Gurka-html
  • täckningskodstäckning
  • Gurka-java
  • Gurka-junit
  • Gurka-jvm-deps
  • Gurka-rapportering
  • Hamcrest-kärna
  • Gurka
  • Junit

När du har laddat ner dessa jar-filer från Maven Repository , kan du konfigurera byggvägen för ditt projekt och lägga till alla .burk filer och bibliotek som visas i ögonblicksbilden nedan.

Steg 2: Nästa steg är att installera Gurka på din Eclipse. För det måste du gå till Hjälp -> Eclipse Marketplace -> Sök gurka och installera Gurka och natur på din förmörkelse. Nedanstående ögonblicksbild visar samma.

Steg 3: När du har konfigurerat Gurka är nästa steg att skapa en funktionsfil. Först måste du skapa en ny källmapp och sedan lägga till en funktionsfil som visas nedan.

Därefter måste du ange namnet på funktionsfilen enligt nedan.

goto uttalande c ++

När du har skapat funktionsfilen kan du skriva scenarierna enligt koden nedan.

Testscenario I:

Funktion: Återställ funktionalitet på inloggningssidan i applikationsscenariot: Verifiering av återställningsknappen ges Öppna Firefox och starta applikationen När du anger användarnamn och lösenord Återställ sedan referensen

Steg 4: Därefter måste du implementera scenarierna med hjälp av stegdefinitioner. I koden nedan har jag implementerat metoderna för scenariot som jag har skrivit i funktionsfilen.

paketstegDefinitioner importerar cucumber.api.java.en.Given import cucumber.api.java.en.Då importerar cucumber.api.java.en.När public class Steps {@Given ('^ Öppna Firefox och starta applikationen $' ) offentligt ogiltigt open_the_Firefox_and_launch_the_application () kastar Throwable {System.out.println ('Detta steg öppnar Firefox och startar applikationen.')} @When ('^ Ange användarnamn och lösenord $') offentligt tomrum enter_the_Username_and_Password () kastar Throwable { System.out.println ('Detta steg anger användarnamnet och lösenordet på inloggningssidan.')} @Then ('^ Reset the credential $') public void Reset_the_credential () kastar Throwable {System.out.println ('This step klicka på knappen Återställ. ')}}

Steg 5: Nu är det sista steget att skapa ” löparklass ' och kör programmet. I grund och botten bör din projektstruktur se ut som avbildad i ögonblicksbilden nedan.

hur man trimmar i java

I ovanstående ögonblicksbild, ” Runner.java ’ är en körbar fil. Låt oss nu koda den här filen och förstå hur den fungerar.

paket Runner import org.junit.runner.RunWith import cucumber.api.CucumberOptions import cucumber.api.junit.Cucumber @RunWith (Cucumber.class) @CucumberOptions (features = 'features', glue = {'stepD'}) public class Löpare {}

I ovanstående kod har jag@CucumberOptions 'och ange paketnamnet för både funktionsfil och Runner-fil. Så att den implementerar metoderna och kör koden. När du kör programmet kommer metoderna att visas från stegdefinitionen. Din produktion ska se ut som visas nedan:

Detta steg öppnar Firefox och startar applikationen. Detta steg anger användarnamn och lösenord på inloggningssidan. Detta steg klickar på knappen Återställ. 1 Scenarier (32m1 passerade) 3 steg (32m3 passerade) 0m0.185s

Så det här är hur du behöver skriva alla filer och köra programmet.

Testscenario II:

Låt oss nu förstå ytterligare ett scenario där jag har integrerat selen med gurka.Tänk på ett scenario där du vill testa Twitter-webbplatsen. Ett av testscenarierna kommer att verifiera inloggningsuppgifterna. Med BDD kan du skriva detta testscenario i det här formatet:

Funktion: Testa Twitter rökscenario Scenario: Testa inloggning med giltiga referenser ges Öppna firefox och starta applikationen När jag anger giltigt användarnamn och giltigt lösenord ska användaren kunna logga in framgångsrikt

Låt oss sedan skriva stegdefinitionsklassen för att implementera alla scenarier.

paket stepD importera java.util.concurrent.TimeUnit importera org.openqa.selenium.By import org.openqa.selenium.WebDriver importera org.openqa.selenium.firefox.FirefoxDriver importera gurka.api.java.en.Given import gurka.api .java.en.Då importerar gurka.api.java.en.När allmän klass SmokeTest {WebDriver-drivrutin @Given ('^ Öppna Firefox och starta applikationen $') public void open_the_firefox_and_start_application () kastar Throwable {System.setProperty ('webdriver .gecko.driver ',' C: geckodriver-v0.23.0-win64geckodriver.exe ') drivrutin = ny FirefoxDriver () driver.manage (). timeouts (). implicitWait (10, TimeUnit.SECONDS) driver.get (' https : //twitter.com/login ')} @When (' ^ Jag anger giltigt användarnamn och giltigt lösenord $ ') offentligt ogiltigt I_enter_valid_username_and_valid_password () kastar Throwable {driver.findElement (By.xpath (' // input [@ placeholder = 'Telefon, e-post eller användarnamn'] ')). SendKeys (' ditt_användarnamn ') driver.findElement (By.xpath (' // div [@ class = 'clearfix field'] // input [@ placeholder = 'Password'] sendKeys ('yo.')) ur_password ')} @Then (' ^ användaren ska kunna logga in framgångsrikt $ ') offentligt ogiltigt user_should_be_able_to_login_successfully () kastar Throwable {driver.findElement (By.xpath (' // button [@ class = 'submit EdgeButton EdgeButton - primary) EdgeButtom - medium ']')). Klicka ()}}

I ovanstående program har jag använt för att starta Firefox-webbläsaren och användadriver.get ()den navigerar genom Twitter-inloggningssidan. Vidare hittar den textrutan användarnamn och lösenord med och ange giltiga referenser. Slutligen kommer den att logga in framgångsrikt och köra testfallet. Du måste köra löparen som ett JUnit-test för att veta om testerna är godkända eller misslyckade.

Nedanstående ögonblicksbild visar programmets resultat.

Så här behöver du skriva alla filer och köra programmet. Så det handlade om gurkselen-handledning. Jag hoppas att du förstod begreppen och hjälpte till att tillföra värde till din kunskap. Om du vill få mer inblick i Selen kan du kolla in vår .

Om du hittade den här “Cucumber Selenium Tutorial ' relevant, kolla in av Edureka, ett pålitligt online-lärande företag med ett nätverk av mer än 250 000 nöjda elever spridda över hela världen.

Har du en fråga till oss? Vänligen nämna det i kommentarsektionen i artikeln om gurkselen-handledning så kommer vi tillbaka till dig.