Hvernig á að þróa próf sjálfvirkni ramma frá grunni?

Í þessum skref fyrir skref leiðbeiningum mun ég lýsa því hvernig hægt er að þróa modularized Test Automation Framework frá grunni með því að nota Java, Selen, TestNG og Maven.

Til að byrja með skulum við sjá hvað Test Automation Framework er og hverjir eru kostirnir við að búa til einn.



Test Automation Framework

Hver er tilgangur Test Automation Framework? Hvaða áskoranir leysir það fyrir þróunarteymið?


Í lipri þróun gætirðu ekki haft nægan tíma til að gera nýja eiginleika þína sjálfvirkan í tíma, svo þú gætir verið að búa til sjálfvirk forskriftir, afritað mikið af kóða víða.

Endurgerðarkóði er eðlislægur hluti af hugbúnaðargerð til að forðast að byggja upp mikla tækniskuld. Þetta á einnig við um sjálfvirkni prófa; með því að endurgera sjálfvirku handritin þín, muntu bæta læsileika og viðhald til lengri tíma litið.


Í þessari handbók um próf sjálfvirkni er lokaafurðin afleiðing af mörgum endurbótum í tímans rás. Augljóslega eru stöðugar umbætur nauðsynlegar ef við ætlum að ná góðri arðsemi fjárfestingarinnar með sjálfvirkni prófa.

Þegar við búum til próf sjálfvirkni ramma ættum við að huga að eftirfarandi meginatriðum:

  • Til að geta búið til sjálfvirk próf fljótt með því að nota viðeigandi frádráttarlög
  • Ramminn ætti að hafa þýðingarmikla skráningu og skýrslugerð
  • Ætti að vera auðvelt að viðhalda og framlengja
  • Ætti að vera nógu einfalt fyrir prófendur að skrifa sjálfvirk próf
  • Reynsluaðferð til að endurtaka misheppnuð próf - þetta er sérstaklega gagnlegt fyrir WebDriver HÍ próf

Í þessari kennslu mun ég nota:

  • Java sem forritunarmál
  • TestNG sem fullyrðingarramminn
  • Maven sem smíðaverkfærið
  • WebDriver sem sjálfvirkni tól vafrans
  • IntelliJ sem IDE

Þessari kennslu um sjálfvirkni ramma er skipt í tvo hluta:


Hluti 1: Að búa til grunnverkefni og einingar og ósjálfstæði

2. hluti: Að bæta kóðanum við

Í 1. hluta þessarar námskeiðs geri ég ráð fyrir að Java og Maven séu þegar uppsett á vélinni þinni.

Skref til að búa til próf sjálfvirkni ramma frá grunni


Skref # 1 - Búðu til nýtt maven verkefni

Opnaðu IntelliJ IDE og veldu Nýtt verkefni úr valmyndinni. Þér er síðan sýndur skjár til að velja tegund verkefnisins sem þú hefur áhuga á.

Skref # 2 - Gefðu verkefninu þitt nafn


Veldu Maven sem verkefnisgerð. Gefðu upp nafn fyrir GroupId og ArtifatId - ég hef ákveðið að nefna þetta Test Automation Framework, Rima.

Skref # 3 - Veldu staðsetningu verkefnis þíns

Veldu núna nafn fyrir verkefnið þitt og veldu möppu fyrir vinnusvæðið þitt


Skref # 4 - Grunnverkefni er búið til

Þú ert nú með grunnverkefni búið til. Við getum byrjað að búa til maven einingar í þessu verkefni til að skipuleggja uppbyggingu próf sjálfvirkni ramma okkar.

Og svona lítur pom.xml okkar út

Þar sem þetta verður grunnverkefni okkar með foreldri pom.xml munum við ekki hafa neinn kóða í þessu verkefni. Í staðinn munum við búa til maven einingar fyrir mismunandi hluta Test Automation Framework. Fara á undan og eyða src möppu.

Skref # 5 - Búðu til mismunandi einingar

Nú erum við í aðstöðu til að búa til mismunandi maven einingar fyrir umgjörð okkar. Við munum búa til eftirfarandi einingar:

rima-rammi - þessi eining inniheldur alla tengda flokka og aðferðir til að auðvelda gerð sjálfvirkra prófa.

rima-lén - þessi eining inniheldur DSL-bekkina (domain specific language).

rima-page-hlutir - eins og nafnið gefur til kynna, inniheldur þessi eining hlutina á síðunni.

rima-aðhvarfspróf - og að lokum sjálfvirku aðhvarfsprófin okkar.

Við munum byrja á að búa til rima-rammi mát. Veldu til að gera þetta File> New> Module

Veldu Maven mát og smelltu á Næsta

Í næsta skjá er hægt að gefa artifactId af einingunni sem þú býrð til, í þessu tilfelli, rima-rammi

Taktu eftir móðurhlutanum og hópnum sem Rima og smelltu á Næsta þar sem við getum gefið nafn einingarinnar og smellt á Ljúka.

Einu sinni rima-rammi mát er búið til, það ætti að líta svona út

Við getum síðan haldið áfram að búa til restina af einingunum á sama hátt. Þegar við höfum búið til allar einingarnar ætti verkefnið okkar að líta út eins og hér að neðan

Og að lokum hefur öllum einingum verið bætt við rótina pom.xml

Bæta við háðir

Næst þurfum við að bæta við háðunum milli eininganna í rammanum auk þess að bæta við bókasöfnunum og öðrum maven verkefnum sem Test Automation Framework okkar er háð.

Ég hef bætt við ósjálfstæði í pom.xml skrám. Þú getur skoðað pom.xml skrárnar í GitHub endurskoðun minni:

https://github.com/AmirGhahrai/Rima

Í 2. hluta þessarar kennslu munum við fara í gegnum raunverulegan ramma kóða fyrir Test Automation sem er skrifaður í Java, WebDriver og TestNG.

Og hér er hlekkurinn í 2. hluta þessarar kennslu:

Page Object Model Framework með Java og WebDriver

Frekari lestur: