Seleniu cu Castravete (BDD Framework): Tutorial cu Exemplu

Cuprins:

Anonim

În acest tutorial, veți învăța cum să integrați Castravetele cu Selenium Webdriver.

Ce este Castravetele?

Castravetele este o abordare de testare care susține dezvoltarea condusă de comportament (BDD). Acesta explică comportamentul aplicației într-un text simplu în limba engleză folosind limbajul Gherkin.

Aflați mai multe la - https://www.guru99.com/cucumber-tutorials.html

Ce este Seleniu?

Seleniul este un instrument de automatizare pentru testarea funcțională a aplicației bazate pe web. Seleniul acceptă diferite limbi, cum ar fi java, rubin, python C #, etc.

Aflați mai multe la - https://www.guru99.com/selenium-tutorial.html

În acest tutorial Castravete, vom învăța-

  • De ce să folosiți Castravete cu Seleniu?
  • Condiție prealabilă pentru utilizarea castraveților cu seleniu.
  • Testarea automatizării cu castraveți cu seleniu.
  • Scenariul 1: tipăriți text în consolă.
  • Scenariul 2: introduceți datele de conectare și resetați valoarea.
  • Scenariul 3: introduceți datele de conectare pe Guru99 și resetați valoarea. Faceți acest lucru pentru 3 seturi de date.

De ce să folosiți Castravete cu Seleniu?

Castravetele și seleniul sunt două tehnologii populare.

Majoritatea organizațiilor folosesc Seleniu pentru testarea funcțională. Aceste organizații care utilizează Seleniu, doresc să integreze Seleniu cu Castravete, deoarece Castravete facilitează citirea și înțelegerea fluxului de aplicații.

Instrumentul pentru castraveți se bazează pe cadrul de dezvoltare condus de comportament, care acționează ca o punte între următoarele persoane:

  1. Inginer software și analist de afaceri.
  2. Tester manual și automatizare.
  3. Tester manual și dezvoltatori.

Cadrul de castraveți BDD beneficiază, de asemenea , de clientul de a înțelege codul aplicației , deoarece folosește limbajul Gherkin, care este în text simplu. Oricine din organizație poate înțelege comportamentul software-ului. Sintaxa lui Gherkin este într-un text simplu, care poate fi citit și înțeles.

Condiție prealabilă pentru utilizarea castraveților cu seleniu

Înainte de a începe integrarea Cucumber Selenium, avem nevoie de următoarele elemente:

  • Fișiere cu borcan de seleniu:
  • Selenium-server-standalone

Poate fi descărcat de la http://www.seleniumhq.org/download/

Fișiere jar pentru castraveți:

  • Castravete-miez
  • Castravete-html
  • acoperire cod cobertura
  • Castravete-java
  • Castravete-junit
  • Castravete-jvm-deps
  • Raportarea castravetilor
  • Hemcrest-core
  • Castravecior
  • Junit

Poate fi descărcat de la https://mvnrepository.com/search?q=Cucumber

Trebuie să căutați fișiere și să le descărcați unul câte unul individual.

De exemplu, vă vom arăta să descărcați unul dintre fișierele jar, adică „Castravete-core”.

Faceți clic pe linkul de descărcare de mai sus. Se redirecționează către site-ul de mai jos. Acum căutați borcanul respectiv, adică „Miezul de castraveți”, așa cum se arată mai jos:

În pagina următoare, faceți clic pe versiunea 1.2.2,

În ecranul următor, faceți clic pe descărcare pentru a obține fișierul jar „Cucumber Core”.

Notă : Pentru ușurință, am pachetat fișierele jar necesare pentru a fi descărcate de la Maven aici. Cu timpul, aceste borcane pot fi actualizate și devin incompatibile. Vi se cere să le descărcați folosind metoda ilustrată mai sus.

Testarea automatizării cu castraveți cu seleniu.

Să studiem pași cu pași pentru a folosi Castravete cu seleniu. Aici vom acoperi 3 scenarii:

  • Scenariul 1: tipăriți text în consolă.
  • Scenariul 2: introduceți datele de conectare și resetați valoarea.
  • Scenariul 3: introduceți datele de conectare pe Guru99 și resetați valoarea. Faceți acest lucru pentru 3 seturi de date.

Scenariul 1: tipăriți text în consolă.

În acest scenariu, tipărim textul în consolă folosind Castravete.

Pasul 1) Creați proiectul în eclipsă.

Creați un proiect Java cu numele „CucumberWithSelenium” așa cum se arată în captura de ecran de mai jos.

Pasul 2) Adăugarea fișierelor Jar în proiect.

Faceți clic dreapta pe Proiect> Selectați Proprietăți> Accesați Java Build Path. Adăugați toate bibliotecile descărcate mai devreme.

Pasul 3) Crearea fișierului de caracteristici

Pentru a crea fișierul de caracteristici, creați mai întâi folderul de caracteristici, așa cum se arată mai jos la captura de ecran.

Acum introduceți numele folderului „Caracteristici” și faceți clic pe butonul „Finalizare”.

Acum, creați un fișier de caracteristici în folderul „Caracteristici” cu numele „MyTest.feature” - Procesul este similar cu crearea unui folder

Notă: Este posibil să fie necesar să instalați pluginul Eclipse Cucumber pentru ca acest lucru să funcționeze. Mergeți - Ajută-> Instalați software nou-> copiați lipiți linkul http://cucumber.github.io/cucumber-eclipse/update-site/ și instalați

Pasul 4) Scrieți scenarii.

Rândurile de mai jos sunt scrise în fișierul „MyTest.feature” folosind limba Gherkin, așa cum se arată mai jos:

Caracteristică: Resetați funcționalitatea pe pagina de conectare a aplicației

Scenariu: Verificarea butonului Reset

Având în vedere Deschideți Firefox și lansați aplicația

Când introduceți numele de utilizator și parola

Apoi Resetați acreditarea

Explicarea codului

Linia 1) În această linie scriem funcționalitatea de afaceri.

Linia 2) În această linie scriem un scenariu de testat.

Linia 3) În această linie definim precondiția.

Linia 4) În această linie definim acțiunea pe care trebuie să o realizăm.

Linia 4) În această linie definim rezultatul sau rezultatul scontat.

Pasul 5) Scrierea scriptului seleniu testrunner pentru proiectarea cadrului Selenium Castravete

Aici creăm pachetul „TestRunner” și apoi fișierul de clasă „Runner.java” sub el.

pachet TestRunner;import org.junit.runner.RunWith;import castravete.api.CucumberOptions;import castravete.api.junit.Castravete;@RunWith (Cucumber.class)@CucumberOptions (features = "Features", lipici = {"StepDefinition"})clasa publică Runner{}

În exemplul de cod de mai sus, Castravete Java, executăm testul de castravete folosind următoarele adnotări:

Adnotarea @RunWith () spune despre clasa de test runner pentru a începe executarea testelor noastre.

Adnotarea @CucmberOptions () este utilizată pentru a seta unele proprietăți pentru testul nostru de castravete, cum ar fi fișierul de caracteristici, definiția pasului etc.

Captură de ecran a fișierului TestRunner.

Pasul 6) Crearea scriptului Definiție pas.

Acum, aici creăm pachetul „StepDefinition” și apoi fișierul script „Steps.java” sub el. Aici, de fapt, scriem un script de seleniu pentru a efectua testul în metode Castravete.

pachet StepDefinition;import castravete.api.java.ro.Dat;import castravete.api.java.ro.Atunci;import castravete.api.java.ro.Când;pași de clasă publică {@Given ("Deschideți Firefox și lansați aplicația $")public void open_the_Firefox_and_launch_the_application () aruncă Throwable{System.out.println („Acest pas deschide Firefox și lansează aplicația.”);}@When ("Introduceți numele de utilizator și parola $")public void enter_the_Username_and_Password () throws Throwable{System.out.println ("Acest pas introduceți numele de utilizator și parola pe pagina de autentificare.");}@Then („Resetați acreditarea $”)public void Reset_the_credential () aruncă Throwable{System.out.println ("Acest pas faceți clic pe butonul Reset.");}}

În codul de mai sus, clasa este creată cu numele „Pași”. Adnotarea de castraveți este utilizată pentru maparea cu fișierul de caracteristici. Fiecare metodă de adnotare este definită:

@Data adnotare definiți metoda pentru a deschide Firefox și a lansa aplicația

@Când adnotarea definește metoda pentru a introduce numele de utilizator și parola

@ Apoi adnotarea definește metoda de resetare a acreditării

Sub fiecare metodă, tipărim doar un mesaj.

Mai jos este captura de ecran a scriptului și arborelui proiectului „Steps.java”, cum arată.

Notă: Definirea etapelor nu este altceva decât pașii pe care doriți să îi efectuați în cadrul acestei metode de castravete.

Pasul 7) Executarea scriptului.

Utilizatorul poate executa acest script din scriptul Test runner, adică „Runner.java” așa cum se arată în captura de ecran de mai jos.

Pasul 8) Analizați ieșirea.

La executarea scriptului „Runner.java”, acesta afișează textul pe consolă. Este același text definit în scriptul „Steps.java”.

Scenariul 2: introduceți datele de conectare și resetați valoarea.

Aici vom introduce doar acreditări pe pagina de autentificare demo Guru99 și vom reseta valoarea

Pentru Scenariul 2 trebuie să actualizăm numai scriptul „Steps.java”. Aici scriem de fapt scriptul de seleniu așa cum se arată în pașii de mai jos. În primul rând, trebuie să adăugăm fișierul de jar Selenium la acest proiect.

Pasul 1) Aici actualizăm scriptul „Steps.java” așa cum se arată în codul și captura de ecran de mai jos.

pachet StepDefinition;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import castravete.api.java.ro.Dat;import castravete.api.java.ro.Atunci;import castravete.api.java.ro.Când;pași de clasă publică {Driver WebDriver;@Given ("Deschideți Firefox și lansați aplicația $")public void open_the_Firefox_and_launch_the_application () aruncă Throwable{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");driver = nou FirefoxDriver ();driver.manage (). window (). maximize ();driver.get ("http://demo.guru99.com/v4");}@When ("Introduceți numele de utilizator și parola $")public void enter_the_Username_and_Password () throws Throwable{driver.findElement (By.name ("uid")). sendKeys ("username12");driver.findElement (By.name ("parolă")). sendKeys ("parolă12");}@Then („Resetați acreditarea $”)public void Reset_the_credential () aruncă Throwable{driver.findElement (By.name ("btnReset")). faceți clic pe ();}}

Captură de ecran a scriptului de seleniu de mai sus.

Pasul 2) Executați scriptul.

După actualizare, rulăm Runner.java.

Pasul 3) Analizați ieșirea.

În ieșire puteți vedea următoarele:

  • Browser lansat.
  • Se deschide site-ul demonstrativ al băncii Guru99.
  • Numele de utilizator și parola sunt plasate pe pagina de autentificare.
  • Resetați valorile.

Scenariul 3: introduceți datele de conectare pe Guru99 și resetați valoarea. Faceți acest lucru pentru 3 seturi de date.

Aici trebuie să actualizăm atât „Step.java”, cât și fișierul de caracteristici.

Pasul 1) Actualizați fișierul de funcții așa cum se arată mai jos:

Aici actualizăm fișierul de caracteristici cu sintaxa „Scenario Outline” și „exemple”.

Caracteristică: Resetați funcționalitatea pe pagina de conectare a aplicației

Schița scenariului: verificarea butonului de resetare cu numărul de acreditări

Având în vedere Deschideți Firefox și lansați aplicația

Când introduceți numele de utilizator și parola

Apoi Resetați acreditarea

Exemple:

| nume de utilizator | parolă |

| Utilizator1 | parolă1 |

| Utilizator2 | parolă2 |

| Utilizator3 | parolă3 |

// În această linie definim setul de date.

Pasul 2) Actualizați acum scriptul Step.java.

Aici actualizăm metodele pentru a trece parametrii, scriptul actualizat prezentat mai jos:

pachet StepDefinition;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import castravete.api.java.ro.Dat;import castravete.api.java.ro.Atunci;import castravete.api.java.ro.Când;pași de clasă publică {Driver WebDriver;@Given ("Deschideți Firefox și lansați aplicația $")public void open_the_Firefox_and_launch_the_application () aruncă Throwable{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");driver = nou FirefoxDriver ();driver.manage (). window (). maximize ();driver.get („www.demo.guru99.com/v4”);}@When ("Introduceți numele de utilizator \" (. *) \ "Și parola \" (. *) \ "$")public void enter_the_Username_and_Password (String nume de utilizator, String password) aruncări Throwable{driver.findElement (By.name ("uid")). sendKeys (nume de utilizator);driver.findElement (By.name („parolă”)). sendKeys (parolă);}@Then („Resetați acreditarea $”)public void Reset_the_credential () aruncă Throwable{driver.findElement (By.name ("btnReset")). faceți clic pe ();}}

Pasul 3) Executați acum scriptul actualizat.

Ecranul de mai jos arată executarea cu succes a scriptului și timpul necesar fiecărui set de date.

Pasul 4) Analizați ieșirea.

În ieșire puteți vedea următoarele:

Ieșirea de mai jos se repetă pentru numărul de seturi de date, adică 3 seturi.

  • Browser lansat.
  • Se deschide site-ul demonstrativ al băncii Guru99.
  • Numele de utilizator și parola sunt plasate pe pagina de autentificare.
  • Resetați valorile.

Concluzie.

Castravetele este un instrument BDD foarte popular. Este ușor de citit și poate fi înțeles de toate părțile interesate, inclusiv de persoanele tehnice și non-tehnice.

Castravetele poate fi integrat cu Selenium urmând 3 pași

  1. Creați un fișier de caracteristici în care definiți caracteristica și scenariile pas cu pas folosind limbajul Gherkin.
  2. Creați fișierul Testrunner. În acest fișier, am integrat Castravetele cu cadrul BDD în Selenium. Executăm acest script.
  3. Creați definiția Step, scriptul de seleniu propriu definit în acest pachet.