Komkommerselenium-zelfstudie - Weet hoe u websitetests moet uitvoeren



Dit artikel over Cucumber Selenium Tutorial zal u helpen de werking van de Cucumber-tool te begrijpen. Verder leer je ook hoe je Cucumber integreert met Selenium en verschillende testcases uitvoert.

Dat lijdt geen twijfel is een van de fantastische tools op het gebied van , maar het lijkt misschien een beetje moeilijk voor een niet-technisch persoon om de werking ervan te begrijpen vanwege de complexiteit van de code. Om deze taak te vergemakkelijken, komt komkommer in het spel, waardoor de complexe code eenvoudig en gemakkelijk te begrijpen is. Maar hoe doet het dat precies? Ik zal je er alles over vertellen via dit artikel over Cucumber Selenium Tutorial.

Hieronder staan ​​de onderwerpen in dit artikel:





Inleiding tot komkommer

Komkommer logo - Komkommer Selenium Tutorial - Edureka

is een testaanpak / tool die ondersteunt Gedragsgestuurde ontwikkeling (BDD). Het biedt een manier om tests te schrijven die iedereen kan begrijpen, ongeacht de mate van technische kennis.



Het verklaart het gedrag van de applicatie in een eenvoudige Engelse tekst met Augurk taal. Ik hoop dat je een glimp opvangt van wat komkommer is. Laten we nu verder gaan en enkele feiten begrijpen die de behoefte aan komkommer in een testkader weergeven.

Waarom komkommer?

Welnu, komkommer is een van de meest populaire tools vanwege de onderstaande redenen:

  1. Komkommer is open source en daarom is het gratis te gebruiken.
  2. Als u komkommer gebruikt, kunt u uw testscripts in meerdere talen zoals , Robijn , .NET, , enzovoort.
  3. Het integreert ook met , Ruby on Rails , Watir en andere webgebaseerde testen hulpmiddelen.
  4. Komkommer is een van de meest gebruikte BDD hulpmiddelen.

Dit zijn enkele van de unieke eigenschappen die Cucumber nuttig maken bij het testen van een website. Nu je weet wat komkommer is en waarom je het nodig hebt, gaan we een van de unieke kenmerken van komkommer begrijpen die het voor een niet-techneut gemakkelijk maken om de testcases te begrijpen.



Gedragsgestuurde ontwikkeling (BDD)

In zeer eenvoudige bewoordingen, BDD of Gedragsgestuurde ontwikkeling is een techniek waarbij uw specificaties of testcases in gewone Engelse zinnen worden geschreven. Met deze aanpak vinden de niet-technische teamleden het gemakkelijk om de stroom te begrijpen en meer samen te werken in het proces van softwareontwikkeling.

hoe anaconda voor python te gebruiken

Laten we dit begrijpen met behulp van een eenvoudig voorbeeld. Overweeg een scenario waarin u de Twitter-website wilt testen. Een van de testscenario's is om de inloggegevens te verifiëren. Met BDD kunt u dit testscenario in dit formaat schrijven:

Functie: Twitter-rookscenario testen Scenario: login testen met geldige inloggegevens Gegeven Open de firefox en start de toepassing Wanneer ik een geldige gebruikersnaam en een geldig wachtwoord invul Dan moet de gebruiker succesvol kunnen inloggen

In het bovenstaande voorbeeld heb ik zojuist een paar uitspraken in eenvoudig Engels geschreven om de scenario's te definiëren. Ik zal in het laatste deel van dit artikel meer inzicht geven in dit scenario en de implementatie ervan. Voor nu, laten we verder gaan in het Cucumber Selenium Tutorial-artikel en de basisprincipes van Selenium leren.

Inleiding tot selenium

heeft de voorkeur tool als het gaat om het automatiseren van de tests die worden uitgevoerd op webbrowsers. Het is alleen nuttig voor het testen van webapplicaties. Elke desktop (software) applicatie of mobiele applicatie kan niet getest worden met Selenium. Het is erg handig bij het schrijven van functionele testcases. Het biedt ook betrouwbare prestaties met ‘ n ' aantal testcases en het is uiteraard de meest geschikte automatiseringstool voor webapplicaties.

Nu u weet wat selenium is, gaan we verder in dit artikel over de zelfstudie over komkommerselenium en begrijpen we waarom komkommer met selenium wordt gebruikt?

Waarom komkommer met selenium gebruiken?

Veel organisaties gebruiken voor functionele en regressietesten .Selenium en Cucumber zijn een geweldige combinatie als het gaat om automatisering van webapplicaties, omdat Cucumber je in staat stelt om je tests snel in een Engelstalige taal te schrijven en Selenium je in staat stelt om op verschillende combinaties van browsers te draaien.

Komkommer tool is gebaseerd op deBehavior Driven Development framework dat fungeert als de brug tussen deSoftware Engineer en Business Analist en ook tussenHandmatige tester en ontwikkelaars.

Wanneer Selenium met Komkommer wordt gebruikt voor testautomatisering, worden tests geschreven in feature-bestanden die kunnen worden begrepen door verschillende belanghebbenden in een agile omgeving zoals Business Analysts. Cucumber biedt ook de mogelijkheid om meerdere scripts en programmeertalen te ondersteunen en JUnit wordt gebruikt om deze scripts uit te voeren en de uitvoer te genereren.

Nu we dit hebben begrepen, laten we nu de verschillende stappen bekijken om de Cucumber-applicatie te maken en de testcases uit te voeren.

Stappen om een ​​komkommertoepassing te maken

De verschillende stappen die nodig zijn bij het maken van een komkommertoepassing zijn als volgt:

  1. Download de Jar-bestanden van Cucumber en Selenium en configureer het buildpad.
  2. Voeg de Cucumber-plug-in toe vanuit Eclipse Marketplace.
  3. Maak een feature-bestand en voeg scenario's toe.
  4. Implementeer de stappen voor de scenario's.
  5. Schrijf de runner class en voer de code uit.

Laten we nu elk van deze stappen in detail bekijken.

Stap 1: Download bestanden met komkommer en seleniumpotten

Komkommer heeft geen interactie met de browser en presteert acties op de website die wordt getest. Interactie met de website is de actie die is uitgevoerd door . Om deze reden je zal nodig hebben downloaden Komkommer evenals Selenium Webdriver jar-bestanden . Als u wilt weten hoe u Selenium op uw systeem installeert, kunt u dit artikel raadplegen op Hieronder staat de lijst met jar-bestanden voor komkommer.

  • Komkommer-kern
  • Komkommer-html
  • dekking code dekking
  • Komkommer-java
  • Komkommer-junit
  • Komkommer-jvm-deps
  • Komkommer-rapportage
  • Hamcrest-kern
  • Augurk
  • Junit

Zodra u deze jar-bestanden downloadt van Maven-opslagplaats , kunt u het buildpad van uw project configureren en alle .pot bestanden en bibliotheken zoals getoond in de onderstaande momentopname.

Stap 2: De volgende stap is om Cucumber op uw Eclipse te installeren. Daarvoor moet je naar Help -> Eclipse Marketplace -> Zoek komkommer en installeer Komkommer en Naturals op je zonsverduistering. Onderstaande momentopname toont hetzelfde.

Stap 3: Nadat u Cucumber heeft geconfigureerd, is de volgende stap het maken van een feature-bestand. Eerst moet u een nieuwe bronmap maken en vervolgens een functiebestand toevoegen, zoals hieronder wordt weergegeven.

Vervolgens moet u de naam van het feature-bestand specificeren zoals hieronder getoond.

Nadat u het feature-bestand hebt gemaakt, kunt u de scenario's schrijven zoals weergegeven in de onderstaande code.

Testscenario I:

Functie: resetfunctionaliteit op inlogpagina van applicatiescenario: verificatie van resetknop gegeven Open Firefox en start de applicatie wanneer u de gebruikersnaam en het wachtwoord invoert en vervolgens de inloggegevens opnieuw instelt

Stap 4: Daarna moet u de scenario's implementeren met behulp van stapdefinities. In de onderstaande code heb ik de methoden geïmplementeerd voor het scenario dat ik in het feature-bestand heb geschreven.

pakket stepDefinitions import cucumber.api.java.en.Given import cucumber.api.java.en.Dan import cucumber.api.java.en.When public class Steps {@Given ('^ Open de Firefox en start de applicatie $' ) public void open_the_Firefox_and_launch_the_application () gooit Throwable {System.out.println ('This Step open the Firefox and launch the application.')} @When ('^ Enter the Username and Password $') public void enter_the_Username_and_Password () throws Throwable { System.out.println ('Deze stap voer de gebruikersnaam en het wachtwoord in op de inlogpagina.')} @Then ('^ Reset de referentie $') public void Reset_the_credential () gooit Throwable {System.out.println ('Deze stap klik op de knop Reset. ')}}

Stap 5: Nu is de laatste stap het creëren van de ‘ hardloper klasse ' en voer het programma uit. Kortom, uw projectstructuur zou eruit moeten zien zoals afgebeeld in de onderstaande momentopname.

eclipse instellen voor java

In de bovenstaande momentopname, ‘ Runner.java ' is een uitvoerbaar bestand. Laten we dit bestand nu coderen en begrijpen hoe het werkt.

pakket 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 Loper {}

In de bovenstaande code heb ik ‘@CucumberOptions ’en specificeer de pakketnaam van zowel feature-bestand als Runner-bestand. Zodat het de methoden implementeert en de code uitvoert. Wanneer u het programma uitvoert, worden de methoden uit de stapdefinitie weergegeven. Jouw output zou er als volgt uit moeten zien:

Deze stap opent Firefox en start de applicatie. Bij deze stap voert u de gebruikersnaam en het wachtwoord in op de inlogpagina. Deze stap klik op de Reset-knop. 1 scenario's (32m1 geslaagd) 3 stappen (32m3 geslaagd) 0m0.185s

Dus dit is hoe je alle bestanden moet schrijven en het programma moet uitvoeren.

Testscenario II:

Laten we nu nog een scenario begrijpen waarin ik selenium met komkommer heb geïntegreerd.Overweeg een scenario waarin u de Twitter-website wilt testen. Een van de testscenario's zal de inloggegevens verifiëren. Met BDD kunt u dit testscenario in dit formaat schrijven:

Functie: Twitter-rookscenario testen Scenario: login testen met geldige inloggegevens Gegeven Open de firefox en start de toepassing Wanneer ik een geldige gebruikersnaam en een geldig wachtwoord invul Dan moet de gebruiker succesvol kunnen inloggen

Laten we vervolgens de Step-definitieklasse schrijven om alle scenario's te implementeren.

pakket stepD import java.util.concurrent.TimeUnit import org.openqa.selenium.Bij import org.openqa.selenium.WebDriver import org.openqa.selenium.firefox.FirefoxDriver import komkommer.api.java.en.Gegeven import komkommer.api .java.en.Then import cucumber.api.java.en.When public class SmokeTest {WebDriver driver @Given ('^ Open de firefox en start applicatie $') public void open_the_firefox_and_start_application () gooit Throwable {System.setProperty ('webdriver .gecko.driver ',' C: geckodriver-v0.23.0-win64geckodriver.exe ') driver = nieuwe FirefoxDriver () driver.manage (). time-outs (). implicitlyWait (10, TimeUnit.SECONDS) driver.get (' https : //twitter.com/login ')} @When (' ^ I enter valid username and valid password $ ') public void I_enter_valid_username_and_valid_password () gooit Throwable {driver.findElement (By.xpath (' // input [@ placeholder = 'Telefoon, e-mail of gebruikersnaam'] ')). SendKeys (' uw_gebruikersnaam ') driver.findElement (By.xpath (' // div [@ class = 'clearfix field'] // input [@ placeholder = 'Wachtwoord'] ')). sendKeys (' yo ur_password ')} @Then (' ^ gebruiker moet succesvol kunnen inloggen $ ') public void user_should_be_able_to_login_successfully () gooit Throwable {driver.findElement (By.xpath (' // button [@ class = 'submit EdgeButton EdgeButton - primair EdgeButtom - medium ']')). Klik ()}}

In het bovenstaande programma heb ik gebruikt om de firefox-browser te starten en te gebruikendriver.get ()het zal navigeren door de inlogpagina van Twitter. Verder zoekt het het tekstvak gebruikersnaam en wachtwoord op met en voer de geldige inloggegevens in. Ten slotte zal het succesvol inloggen en de testcases uitvoeren. U moet de hardloper uitvoeren als een JUnit-test om te weten of de tests zijn geslaagd of niet.

Onderstaande snapshot toont de output van het programma.

Dit is hoe u alle bestanden moet schrijven en het programma moet uitvoeren. Dus dat ging allemaal over Cucumber Selenium Tutorial. Ik hoop dat je de concepten hebt begrepen en hebt geholpen bij het toevoegen van waarde aan je kennis. Als je nu meer inzicht wilt krijgen in Selenium, kun je onze .

Als je deze “Cucumber Selenium Tutorial ' relevant, bekijk de door Edureka, een vertrouwd online leerbedrijf met een netwerk van meer dan 250.000 tevreden leerlingen verspreid over de hele wereld.

Heeft u een vraag voor ons? Vermeld het in het opmerkingengedeelte van het artikel over de zelfstudie over komkommer en selenium en we nemen zo snel mogelijk contact met u op.