cucumber selenium tutorial
Gurka Selen WebDriver Java-integration med exempel:
I den senaste handledningen diskuterade vi gurkaverktyget , dess användning och olika funktioner.
Gå vidare i vår fria Selen online-utbildning serien kommer vi att diskutera hur man skapar ett gurkaprojekt och kommer att diskutera integrationen av Selen WebDriver med Gurka.
Vi kommer att starta ett gurkaprojekt med Maven. För att ställa in Maven i ditt system tack se denna handledning om Maven från samma serie.
binärt trädimplementering c ++
Vad du kommer att lära dig:
Gurkaprojektinstallation
Steg 1: Skapa ett nytt Maven-projekt:
Högerklicka -> Nytt -> Övrigt -> Maven -> Maven Project -> Nästa
Steg 2: Nu kommer projektet att se ut så här:
Steg 3 : Lägg till beroenden nedan i pom.xml
info.cukes cucumber-java 1.0.2 test info.cukes cucumber-junit 1.0.2 test junit junit 4.10 test
Steg 4 : Skapa en sample.feature-fil under src / test / resources.
@smokeTest
Funktion : För att testa mitt gurktest pågår
Jag vill köra en exempelfunktionsfil.
Scenario : gurkainstallation
Given exempelfunktionsfilen är klar
När Jag kör funktionsfilen
Sedan körning bör vara framgångsrik
Steg 5 : Skapa en klass under src / test / java som implementerar alla steg.
public class stepDefinition { @Given('^sample feature file is ready$') public void givenStatment(){ System.out.println('Given statement executed successfully'); } @When('^I run the feature file$') public void whenStatement(){ System.out.println('When statement execueted successfully'); } @Then('^run should be successful$') public void thenStatment(){ System.out.println('Then statement executed successfully'); } }
Steg 6 : Skapa en JUnit-löpare för att köra testet.
@RunWith(Cucumber.class) @Cucumber.Options(format={'pretty','html:reports/test-report'},tags= '@smokeTest') public class CucumberRunner { }
Ange rapportens väg som här. Rapporterna lagras i mappen 'testrapport' under projektmappen och 'vackert' format anger vilken typ av rapport.
Steg 7 : Junit Resultat och testrapport:
Nedan visas rapporten när gurktestet lyckas. Den gröna stapeln i Junit beskriver testet är godkänt. På samma sätt beskriver den röda stapeln att testet misslyckades.
Om vi vill använda standardrapportering navigerar du på den väg som nämns i Junit Runner. I det här fallet har vi gett väg som rapporter-> testrapporter-> index.html.
Öppna denna rapport i Internet Explorer eller i Firefox för att verifiera resultatet. Nedan följer ett urval av rapporten:
Gurka Selen WebDriver Integration
Gurka ramverk kan användas för att testa webbaserade applikationer tillsammans med Selenium WebDriver. Testfallet skrivs i enkla funktionsfiler som är lätta att förstå av chefer, icke-tekniska intressenter och affärsanalytiker. Och dessa funktionsfilsteg implementeras i stegdefinitionsfil. Om du använder maven måste du lägga till beroenden för gurka och WebDriver.
Så här är exemplet testfall vi har implementerat med hjälp av gurka och WebDriver. Såsom ges nedan är scenariot i funktionsfilen självförklarande.
Funktion: Inloggningsfil
@selen
Scenario : Inloggningsscenstest för Gmail
Given navigera till Gmail-sidan
När användare inloggad med användarnamn som “userA” och lösenord som “lösenord”
Sedan hemsidan ska visas
WebDriver Implementation in Cucumber step Definitioner:
public class stepDefinition { WebDriver dr; @Given('^navigate to gmail page$') public void navigate(){ dr=new FirefoxDriver(); dr.get('http://www.gmail.com'); } @When ('^user logged in using username as '(.*)' and password as '(.*)'$') public void login(String username,String password){ dr.findElement(By.xpath('//*[@id='Email']')).sendKeys(username); dr.findElement(By.xpath('//*[@id='Passwd']')).sendKeys(password); dr.findElement(By.xpath('//*[@id='signIn']')).click(); dr.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); } @Then('^home page should be displayed$') public void verifySuccessful(){ String expectedText='Gmail'; String actualText= dr.findElement(By.xpath('//*[@id='gbq1']/div/a/span')).getText(); Assert.assertTrue('Login not successful',expectedText.equals(actualText)); } }
I detta test har vi använt Firefox som webbläsare för att testa Gmail-inloggningsfunktionen.
Det är uppenbart att WebDriver-objekt är en klassvariabel och används över hela klassen.
Given uttalande initierar webbläsaren och navigerar till sidan.
När uttalande loggar in i applikationen med användarnamnet som 'userA' och lösenord som 'lösenord'. Både värdena 'användarnamn' och 'lösenord' skickas från funktionsfilen och båda värdena som ska användas i samma ordning.
Sedan Uttalande validerar endast villkoren efter inloggning i applikationen.
Detta är ett provtest som beskriver användningen av gurka och selen. Du kan skapa flerskiktsarkitektur beroende på ditt projektkrav.
Slutsats:
I denna Cucumber Selenium Java Integration Tutorial har vi täckt de flesta gurkakoncept som inkluderar Gurka-funktioner och dess användning tillsammans med WebDriver.
Detta minskar komplexiteten i koden som är skriven för att utforma de traditionella ramarna som Keyword Driven och Hybrid Framework. Gurka används i större delen av projektet där människor följer smidig metodik eftersom beteendedriven utveckling är en agil mjukvarupraxis.
Nästa handledning # 32 : Vi har nu slutfört alla tekniska handledningar från denna Selen-träningsserie. Därefter kommer vi att publicera om några viktiga allmänna ämnen som ”Uppskattning av insatser för Selen-projekt” och ”Selenintervjuer med svar”.
Vänligen lägg upp dina frågor angående gurkselen-handledning.
Rekommenderad läsning
- Introduktion till Selen WebDriver - Selen Tutorial # 8
- Automatiseringstestning med gurkaverktyg och selen - Selenhandledning # 30
- Integration av selen med JMeter
- Integration av Jenkins med Selen WebDriver: Steg-för-steg-handledning
- Implementering av vårt första WebDriver Script - Selenium WebDriver Tutorial # 10
- Hur man hanterar varningar / popup-fönster i Selen WebDriver - Selen Tutorial # 16
- WebDriver Hela installationen och installationen med Eclipse - Selen Tutorial # 9
- Spock för integration och funktionstestning med selen