Cucumber Ramme: Hvad er Cucumber Testværktøj?
Hvad er Cucumber?
Cucumber er et testværktøj, der understøtter Behavior Driven Development (BDD). Det tilbyder en måde at skrive test på, som alle kan forstå, uanset deres tekniske viden. I BDD skriver brugere (forretningsanalytikere, produktejere) først scenarier eller accepttest, der beskriver systemets adfærd fra kundens perspektiv, til gennemgang og sign-off af produktejere, før udviklere skriver deres koder. Cucumber rammebrug Ruby programmeringssprog.

Sådan fungerer BDD i Cucumber Automatisering?
Overvej, at du er blevet tildelt til at oprette pengeoverførselsmodul i en Net Banking-applikation.
Der er flere måder at teste det på Cucumber Testramme
- Pengeoverførsel bør finde sted, hvis der er nok saldo på kildekontoen
- Pengeoverførsel bør finde sted, hvis destinations-a/c-oplysningerne er korrekte
- Pengeoverførsel bør finde sted, hvis transaktionsadgangskode / rsa-kode / sikkerhedsgodkendelse for transaktionen indtastet af brugeren er korrekt
- Pengeoverførsel bør finde sted, selvom det er en helligdag
- Pengeoverførsel bør finde sted på en fremtidig dato som fastsat af kontohaveren
Testscenarie blive mere kompliceret og kompleks, da vi overvejer yderligere funktioner som overførselsbeløb X i et interval Y dage/måneder , stop tidsplanoverførsel, når det samlede beløb når Z , og så videre
Den generelle tendens hos udviklere er at udvikle funktioner og skrive testkode senere. Som det fremgår af ovenstående tilfælde, Test sag udvikling for denne sag er kompleks, og udvikleren vil udsætte Test indtil frigivelse, hvorefter han vil lave hurtige, men ineffektive tests.
For at overvinde dette problem, Cucumber BDD (Behavior Driven Development), blev undfanget. Det gør hele testprocessen let for en udvikler
In Cucumber BDD, hvad end du skriver skal gå ind Givet-Hvornår-Så trin. Lad os overveje det samme eksempel ovenfor i BDD
Given that a fund transfer module in net banking application has been developed And I am accessing it with proper authentication
WhenI 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
Er det ikke nemt at skrive og læse og forstå? Det dækker alle mulige testcases for pengeoverførselsmodulet og kan nemt ændres, så det kan rumme flere. Det er også mere som at skrive dokumentation til fondsoverførselsmodulet.
Fordele ved Cucumber Software
- Det er nyttigt at involvere forretningsinteressenter, som ikke nemt kan læse kode
- Cucumber Testværktøj fokuserer på slutbrugeroplevelsen
- Skrivestilen giver mulighed for lettere genbrug af kode i testene
- Hurtig og nem opsætning og udførelse
- Cucumber testværktøj er et effektivt værktøj til test
Cucumber vs Selenium vs ALM
I dette afsnit vil vi studere forskellen mellem Cucumber, Selenium og ALM.
| Cucumber | HP ALM (QTP) | Selenium |
|---|---|---|
| Cucumber software er gratis | QTP er dyrt | Det er gratis |
| Cucumber software er et adfærdsdrevet udviklingsværktøj | Det er et funktionelt automatiseringsværktøj | Det er en funktionel og ydeevne ( Selenium Grid) testværktøj |
| Plugin ind Cucumber testværktøj fungerer hurtigere | Plugin er langsommere sammenlignet med Cucumber og Selenium | Plugins er langsommere end agurk |
| Cucumber Framework understøtter også andre sprog ud over Ruby-lignende Java, Scala, Groovy etc. | QTP understøtter kun VB script | Selenium understøtninger Java, .Net og mange andre sprog |
| At skrive automatiseringstrin er en fælles indsats af testere og udviklere | In QTP kun testeren skriver automatiseringstrin | lignende Cucumber Værktøj, skriveautomatiseringstrin er fælles indsats af testere og udviklere |
| Cucumber testværktøj understøtter kun webmiljø | Understøtter web, desktop og enhver klientserverapplikation | Understøtter kun webmiljø |
Tjek også:- UFT vs Selenium: Forskel mellem Selenium og HP UFT
