Cucumber Kader: wat is Cucumber?

โšก Slimme samenvatting

Cucumber is een testtool die Behavior Driven Development (BDD) ondersteunt, waardoor iedereen tests kan lezen, ongeacht technische kennis. Deze bron legt uit hoe BDD werkt aan de hand van Given-When-Then-stappen en de voordelen ervan. Cucumberen hoe het zich verhoudt tot Selenium en HP ALM.

  • ???? Kerndefinitie: Cucumber is een Behavior Driven Development-tool waarmee je tests in begrijpelijke taal kunt schrijven, zowel voor technische als niet-technische belanghebbenden.
  • ๐Ÿ—ฃ๏ธ BDD Foundation: Bedrijfsanalisten en producteigenaren beschrijven het systeemgedrag voordat ontwikkelaars code schrijven, waardoor het gedeelde begrip wordt verbeterd.
  • ๐Ÿ“ Gegeven-Wanneer-Dan: Elke Cucumber Het scenario volgt een leesbare Given-When-Then-structuur die tevens als levende documentatie fungeert.
  • โšก Belangrijkste voordelen: Snelle installatie, hergebruik van code, focus op de eindgebruiker en eenvoudige betrokkenheid van zakelijke belanghebbenden zonder programmeerkennis.
  • โ€‹ Gereedschapsvergelijking: Cucumber is gratis en gebaseerd op BDD, terwijl HP ALM betaald is en Selenium richt zich op functionele en prestatietests.

Cucumber Kader

Wat is Cucumber?

Cucumber is een testtool die Behavior Driven Development (BDD) ondersteunt. Het biedt een manier om tests te schrijven die iedereen kan begrijpen, ongeacht hun technische kennis. Bij BDD schrijven gebruikers (businessanalisten, producteigenaren) eerst scenario's of acceptatietests die het gedrag van het systeem vanuit het perspectief van de klant beschrijven. Deze worden vervolgens beoordeeld en goedgekeurd door de producteigenaren voordat ontwikkelaars hun code schrijven. Cucumber framework maakt gebruik van de Ruby programmeertaal.

Cucumber Kader
Cucumber Kader

Hoe BDD werkt Cucumber Automatisering?

Stel, u krijgt de opdracht om een โ€‹โ€‹module voor geldoverboekingen te ontwikkelen voor een internetbankierapplicatie.

Er zijn meerdere manieren om het te testen in de Cucumber Testkader:

  1. Geldoverboekingen moeten plaatsvinden als er voldoende saldo op de bronrekening staat.
  2. De geldoverdracht moet plaatsvinden als de gegevens van de bestemmingsrekening correct zijn.
  3. De geldoverdracht vindt alleen plaats als het transactiewachtwoord / de RSA-code / de beveiligingsauthenticatie die de gebruiker voor de transactie heeft ingevoerd, correct is.
  4. Geld overmaken kan ook op een officiรซle feestdag.
  5. De geldoverdracht dient op een door de rekeninghouder vast te stellen datum in de toekomst plaats te vinden.

De Testscenario Het wordt steeds uitgebreider en complexer naarmate we extra functies in overweging nemen, zoals het overmaken van bedrag X gedurende een periode van Y dagen/maanden, het stoppen van de geplande overboeking wanneer het totale bedrag Z bereikt, enzovoort.

Ontwikkelaars hebben over het algemeen de neiging om functionaliteiten te ontwikkelen en de testcode later te schrijven. Zoals in het bovenstaande voorbeeld duidelijk blijkt, Testgeval De ontwikkeling voor dit scenario is complex en de ontwikkelaar zal het uitstellen. Testen tot aan de release, waarna ze snelle maar ineffectieve tests zullen uitvoeren.

Om dit probleem te overwinnen, Cucumber BDD (gedragsgedreven ontwikkeling) werd bedacht. Het maakt het hele testproces eenvoudig voor een ontwikkelaar.

In Cucumber BDD, wat je ook schrijft, het moet ingaan Gegeven-wanneer-dan stappen. Laten we hetzelfde voorbeeld hierboven eens bekijken in BDD:

Given that a fund transfer module in net banking application has been developed
And I am accessing it with proper authentication
When I shall transfer with enough balance in my source account
Or I shall transfer on a Bank Holiday
Or I shall transfer on a future date
And destination a/c details are correct
And transaction password/RSA code/security authentication for the transaction is correct
And press or click send button
Then amount must be transferred
And the event will be logged in log file

Is het niet makkelijk om te schrijven, te lezen en te begrijpen? Het behandelt alle mogelijke testgevallen voor de module voor geldovermakingen en kan eenvoudig worden aangepast om er meer te omvatten. Het is ook meer alsof je documentatie schrijft voor de module voor geldovermakingen.

Voordelen Cucumber Software

  1. Het is nuttig om zakelijke belanghebbenden te betrekken die niet gemakkelijk code kunnen lezen.
  2. De Cucumber Testinstrument richt zich op de gebruikerservaring.
  3. De schrijfstijl voor de tests maakt hergebruik van code in de tests eenvoudiger.
  4. Snelle en eenvoudige installatie en uitvoering.
  5. De Cucumber testtool is een efficiรซnt hulpmiddel voor het testen van.

Cucumber vs Selenium versus ALM

In deze sectie zullen we het verschil tussen bestuderen Cucumber, Seleniumen ALM.

Cucumber HP ALM (QTP) Selenium
Cucumber De software is gratis. QTP is duur. Het is gratis.
Cucumber Software is een gedragsgestuurd ontwikkelingsinstrument. Het is een functioneel automatiseringshulpmiddel. Het is functioneel en prestatiegericht (Selenium Grid) testtool.
De plugin in de Cucumber De testtool werkt sneller. Plugins zijn trager in vergelijking met Cucumber en Selenium. Plugins zijn trager dan Cucumber.
Cucumber Het framework ondersteunt naast Ruby ook andere talen, zoals Java, Schaal, Groovy, Etc. QTP Ondersteunt alleen VB Script. Selenium ondersteunt Java.Net en vele andere talen.
Het schrijven van automatiseringsstappen is een gezamenlijke inspanning van testers en ontwikkelaars. In QTPAlleen de tester schrijft de automatiseringsstappen. Like CucumberHet schrijven van automatiseringsstappen is een gezamenlijke inspanning van testers en ontwikkelaars.
De Cucumber De testtool ondersteunt alleen de webomgeving. Ondersteunt web-, desktop- en alle client-serverapplicaties. Ondersteunt alleen de webomgeving.

Controleer ook: - UFT vs Selenium: Verschil tussen Selenium en HP UFT

Veelgestelde vragen

Ja. AI-tools kunnen Gherkin-scenario's en stapdefinities rechtstreeks op basis van geschreven vereisten genereren. Testers moeten de gegenereerde scenario's echter wel controleren op nauwkeurigheid, randgevallen en volledige dekking voordat ze deze gebruiken.

Nee. AI versnelt het schrijven van scenario's en het genereren van stappen, maar menselijke testers definiรซren nog steeds het verwachte gedrag, valideren de bedrijfslogica en onderhouden de samenwerking met belanghebbenden, wat essentieel blijft voor Behavior Driven Development.

Gherkin is de platte-teksttaal Cucumber Het wordt gebruikt om testscenario's te schrijven. Het volgt de Given-When-Then-structuur, waardoor tests leesbaar zijn voor zowel zakelijke belanghebbenden als ontwikkelaars, terwijl ze toch uitvoerbaar blijven.

Cucumber is een BDD-tool. Het richt zich op het systeemgedrag vanuit het perspectief van de gebruiker, in tegenstelling tot TDD, dat zich concentreert op het schrijven van unit-tests voordat elk klein stukje functionaliteit wordt geรฏmplementeerd.

Vat dit bericht samen met: