Cucumber Kehys: Mikä on Cucumber?
⚡ Älykäs yhteenveto
Cucumber on testaustyökalu, joka tukee käyttäytymislähtöistä kehitystä (BDR), jonka avulla kuka tahansa voi lukea testejä teknisestä tietämyksestä riippumatta. Tämä resurssi selittää, miten BDD toimii Given-When-Then-vaiheiden avulla, sekä sen edut. Cucumberja miten se vertautuu Selenium ja HP ALM.

Mikä on Cucumber?
Cucumber on testaustyökalu, joka tukee käyttäytymislähtöistä kehitystä (BDD). Se tarjoaa tavan kirjoittaa testejä, jotka kuka tahansa ymmärtää teknisestä tietämyksestään riippumatta. BDD:ssä käyttäjät (liiketoiminta-analyytikot, tuoteomistajat) kirjoittavat ensin skenaarioita tai hyväksymistestejä, jotka kuvaavat järjestelmän toimintaa asiakkaan näkökulmasta. Tuoteomistajat tarkistavat ja hyväksyvät ne ennen kuin kehittäjät kirjoittavat koodinsa. Cucumber viitekehys käyttää Ruby ohjelmointikieli.

Kuinka BDD toimii Cucumber Automaatio?
Oletetaan, että sinulle on annettu tehtäväksi luoda varainsiirtomoduuli verkkopankkisovelluksessa.
Sen testaamiseen on useita tapoja Cucumber Testauskehys:
- Rahansiirto tulisi tehdä, jos lähdetilillä on riittävästi katetta.
- Rahansiirron pitäisi tapahtua, jos kohdetilin tiedot ovat oikein.
- Rahansiirron pitäisi tapahtua, jos käyttäjän syöttämä tapahtuman salasana / RSA-koodi / turvatodennus on oikein.
- Rahansiirron tulisi tapahtua, vaikka olisi pankkipyhä.
- Rahansiirron tulisi tapahtua tilinomistajan asettamana myöhempänä ajankohtana.
Testiskenaario tulee monimutkaisemmaksi ja monimutkaisemmaksi, kun otamme huomioon lisäominaisuuksia, kuten siirtosumman X Y päivän/kuukauden ajalta, suunnitellun siirron pysäyttämisen, kun kokonaissumma saavuttaa Z:n, ja niin edelleen.
Kehittäjien yleinen taipumus on kehittää ominaisuuksia ja kirjoittaa testikoodia vasta myöhemmin. Kuten yllä olevasta tapauksesta käy ilmi, Testitapaus Tämän skenaarion kehittäminen on monimutkaista, ja kehittäjä lykkää Testaus julkaisuun asti, jolloin he tekevät nopeita mutta tehottomia testejä.
Tämän ongelman voittamiseksi Cucumber BDD (Behavior Driven Development) oli suunniteltu. Se tekee koko testausprosessista helpon kehittäjälle.
In Cucumber BDD, mitä tahansa kirjoitat, on mentävä Annettu-Kun-Sitten vaiheet. Tarkastellaan samaa esimerkkiä yllä BDD:ssä:
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
Eikö sitä ole helppo kirjoittaa, lukea ja ymmärtää? Se kattaa kaikki mahdolliset testitapaukset varainsiirtomoduulille ja sitä voidaan helposti muokata useampien tarpeiden mukaan. Se on myös enemmän kuin varainsiirtomoduulin dokumentaation kirjoittamista.
Edut Cucumber Tuotteemme
- On hyödyllistä ottaa mukaan liiketoiminnan sidosryhmiä, jotka eivät osaa helposti lukea koodia.
- Cucumber Testaustyökalu keskittyy loppukäyttäjän kokemukseen.
- Testien kirjoitustyyli mahdollistaa koodin helpomman uudelleenkäytön testeissä.
- Nopea ja helppo asennus ja toteutus.
- Cucumber testityökalu on tehokas työkalu testaus.
Cucumber vs Selenium vs ALM
Tässä osiossa tutkimme eroa Cucumber, Seleniumja ALM.
| Cucumber | HP ALM (QTP) | Selenium |
|---|---|---|
| Cucumber ohjelmisto on ilmainen. | QTP on kallis. | Se on ilmainen. |
| Cucumber Ohjelmisto on käyttäytymiseen perustuva kehitystyökalu. | Se on toiminnallinen automaatiotyökalu. | Se on toiminnallinen ja suorituskykyinen (Selenium Grid) -testaustyökalu. |
| Laajennus kohdassa Cucumber testaustyökalu toimii nopeammin. | Liitännäiset ovat hitaampia verrattuna Cucumber ja Selenium. | Liitännäiset ovat hitaampia kuin Cucumber. |
| Cucumber Framework tukee Rubyn lisäksi myös muita kieliä, kuten Java, Scala, Groovy, Jne | QTP tukee vain VB-skriptejä. | Selenium tukee Java, .Net ja monet muut kielet. |
| Automaatiovaiheiden kirjoittaminen on testaajien ja kehittäjien yhteistyötä. | In QTP, vain testaaja kirjoittaa automaatiovaiheet. | Pitää Cucumber, automaatiovaiheiden kirjoittaminen on testaajien ja kehittäjien yhteistyötä. |
| Cucumber Testaustyökalu tukee vain verkkoympäristöä. | Tukee verkko-, työpöytä- ja kaikkia asiakas-palvelinsovelluksia. | Tukee vain verkkoympäristöä. |
Tarkista myös: - UFT vs Selenium: Ero Selenium ja HP UFT
