Kuidas kirjutada efektiivne ühiku testimine WSO2 Integration Studio abil

Kui kood töötab sujuvalt, ei hooli keegi selle testimisest, eeldades, et kood on täiuslik ja ilma vigadeta. Nii et kui kood puruneb, peavad nad tegema kõik endast oleneva, et teada saada, kust see puruneb ja miks see puruneb. See ei ole lihtne ülesanne, kuid väga aeganõudev ja kulukas töö.

Ühiktestimine on suurepärane meetod, mis tagab, et kood toimib ootuspäraselt, ja see on varajane veatuvastusviis, mida saab kasutada meie arenduse kasutamise juhtumiteks mis tahes platvormidel.

WSO2 Integration Studio uusima versiooniga 7.0.0 oleme tutvustanud ühte uhiuut funktsiooni; Üksuse testimine Integration Studio'i tööriistade abil, et parandada arendaja kogemust, lastes neil integratsioonilahendusi katsetada mõne minuti jooksul. Selle funktsiooni abil saavad kasutajad luua järgmiste ESB artefaktide jaoks uusi ühiktestide komplekte,

  • REST API-d
  • Puhverserveri teenused
  • Järjestused

See ühiktestide komplekt sisaldab mitmeid testjuhtumeid, mis kinnitavad tegelikku koormat ja atribuute eeldatavate väärtustega. Lõpuks kuvatakse tööriistakonsoolis ühiku testkomplektide üksikasjalik kokkuvõte, mis võib olla kasulik integratsioonivoogude tõrkeotsingul.

See artikkel on samm-sammuline juhend selle kohta, kuidas WSO2 integratsioonistuudio abil oma integratsioonivoogude jaoks tõhusat ühikute testimist mõne minutiga kirjutada. Siinkohal kasutan sisupõhise marsruutimise näidet, et näidata ühiku testimise voogu. Selle malli leiate integratsioonistuudio lehel Alustamine.

01. Looge integratsioonilahendus

WSO2 Integration Studio tööriista käivitamisel suunatakse teid kõigepealt tervituslehele Alustamine. Seejärel valige tervituslehe mallikomplektist sisupõhine marsruutimall ja looge uus projekt nimega “ContentBasedRoutingApplication”.

Looge uus malliprojekt WSO2 Integration Studio'is

Kui projekt on loodud, leiate projekti Exploreri tööruumist projekti src-kataloogist vastavad puhverserveri teenuse ja lõpp-punkti artefaktid. Oota! Oota! Kas sa nägid seda? Nüüd on src-kataloogis paralleelselt uus kataloog nimega test, mis hoiab projekti artefaktide ühiku testkomplekte.

02. Looge uus Unit Test Suite

Võite lihtsalt hiire parema nupuga klõpsata testkataloogil ja liikuda uue juurde ning klõpsata allpool näidatud suvandil Unit Test Suite. See käivitab teie jaoks üksuse testkomplekti loomise viisardi. Teise võimalusena saate luua uue ühiku testkomplekti, klõpsates hiire parema nupuga → Uus vastaval API-l, puhverserveri teenusel või jadafailil, mis asub → src → peamine → sünapsikonfiguratsiooni failitee.

Looge uus Unit Test Suite

Samm 01: Valige üksuse Test Suite loomise meetod

Sellel lehel saate valida, kuidas soovite ühiktestide komplekti luua, kas importides või luues uue. Selles näites valin jätkamiseks suvandi Loo uus ühiku testikomplekt.

Unit Test Suite loomise meetod

2. samm: valige testitav põhifailifail

Sellel lehel saate anda ühiku testkomplektile nime ja valida puupõhises faililoendis peamise konfiguratsioonifaili faili. Selles loendis kuvatakse teile kõik API-, puhverserveriteenuse ja jadafaili failid, mis on tööriistade tööalal saadaval. Kui olete lõpetanud, klõpsake nuppu Edasi.

Valige Test Artifact, mis soovib testida

Samm 03: Valige toetavad artifakti failid

Sellel lehel saate valida toetavad esemed, mida kasutatakse eelmises etapis valitud peamises esemefailis. Selles vaates saate valida mitu artefakti / ressurssi, näiteks konfiguratsioonifailid, registriressursid, konnektorid jne. Selles näites olen valinud kaks lõpp-punkti, mis kasutavad sisupõhist marsruutimise puhverserveri teenust. Kui olete lõpetanud, klõpsake nuppu Edasi.

Valige testitava artefakti jaoks toetavad esemed

4. samm: valige Mock Services

Tegelike lõpp-punktide pilkamiseks võite valida mitu pilkuteenuse faili, mida saab luua järgmise meetodi abil.

Paremklõpsake kausta Test → Uus → Mock Service

Kui te pole veel modelleerimisteenuseid loonud, võite klõpsata sellel lehel linki Loo uus modelleerimisteenus ja luua teile uus modelleerimisteenus (selle näite puhul ei kasuta ma ühtegi pilkuteenust). Pärast seda klõpsake nuppu Lõpeta.

Valige Mock services või looge lõpp-punkti jaoks uus Mock Service

Loodud ühiku testkomplekti saate teada valitud projekti testkataloogist.

03. Lisage loodud üksuse testikomplekti testijuhtumid

Ühiktesti komplekt koosneb kolmest põhiosast. Artefakti testimine, testjuhtumite ja kinnituse üksikasjad, jaotis Toetavad esemed ja jaotis Teenused. Samuti saame ühiku testkomplekti vaatamiseks ja muutmiseks lülituda disaini- ja lähtevaate vahel. Uue testjuhtumi lisamiseks seadme testkomplektile vajutage disainivaates jaotise Test artefakt, testjuhtumid ja kinnituse üksikasjad all nuppu . See käivitab teie jaoks viisardi Add Test Cases. Esiteks sisestage kehtiv juhtumi nimi testimise hõlbustamiseks.

Lisage Unit Test Suite'ile uus testikorpus

1. samm: sisestage sisendvõimsus ja atribuudid

Selles jaotises saate sisestada sisendi kasulikkuse ja sisendi atribuudid (need kaks välja on valikulised), mida kasutatakse vahendusvoo sisenditena. Sisendkasu koormus võib siin olla JSON, XML või lihttekst.

Selles näites olen sisendkasutusena lisanud järgmise XML-kasuliku koormuse.

Lisama 10 25

Arvestades sisendi atribuute, on Unit Test Suite'is lubatud testida kolme tüüpi atribuute. Need on sünaps ($ ctx), telg2 ($ ax2) ja transport ($ trp). Järjestuste jaoks võimaldab testikomplekt teil lisada väärtuste abil kõik ülaltoodud atribuutide tüübid. API-de ja puhverserveriteenuste jaoks võimaldab see teil lisada ainult transpordiatribuute.

Vajutage nuppu to, et lisada testjuhtumile uus sisestusomadus. Sisendomandi kohta andmete kogumiseks avaneb uus viisardi leht, nagu allpool näidatud. Selles näites vajab see sisendtranspordi omadust järgmiselt.

  • Vara ulatus → transport
  • Atribuudi nimi → Sisu tüüp
  • Omaduse väärtus → rakendus / xml
Lisage testjuhtmele sisendandmed
Märkus. Kui loote API-sid proovijuhina, näete ülaltoodud jaotises kahte täiendavat kohustuslikku välja nagu Request Path and Request Method. Päringu tee näitab API ressursi URL-i kaardistamist ja päringu meetod näitab ressursi REST-meetodi tüüpi.

2. samm: lisage väite üksikasjad

Selles jaotises saate katsejuhtumile lisada mitu väidet. Eristamise hõlbustamiseks oleme määratlenud kaks juhtumi tüüpi väidet; AssertEquals ja AssertNotNull. AssertEquals kontrollib, kas vahendatud tulemus ja eeldatav väärtus on võrdsed, AssertNotNull aga kontrollib, kas vahendatud tulemus pole null. Vajutage nuppu to, et lisada testimisjuhule uus väide. See hüppab uue viisardi lehe järgmiselt.

Lisage katsejuhtumile väide

Kui olete lisanud vähemalt ühe nõutud väite üksikasjad ja klõpsake üksuse testikomplekti salvestamist, klõpsake nuppu Lisa. Lisaks võite viidata allikavaatele, et saada rohkem ideed selle kohta, kuidas ühiku testkomplekti süntaksid ülaltoodud toimingute kaudu genereeriti.

04. Käitage ühikatse sviite

Loodud Unit Test Suites saate käivitada manustatud Unit Testing Serveri abil, mis on integreeritud WSO2 Integration Studio pakitud mikrointegraatori tööaega. Lihtsalt võite teha parema hiireklõpsu testide kataloogil ja klõpsata käsul Käita ühiktesti, et käivitada kõik ühiktestide komplektid korraga. Muul juhul paremklõpsake konkreetsel ühiku testikomplektil ja klõpsake käsul Käita ühiktesti, et käivitada ainult see ühiktestide komplekt.

Kui olete klõpsanud nupul Käivita üksuse test, kuvatakse hüpik Käivita konfiguratsioon järgmiselt. Siin saate otsustada, kas käivitada ühiktesti komplektid lokaalse serveri või kaugserveri režiimis. Vaikimisi on siin valitud režiim Local Server, et käivitada see koos manustatud serveriga WSO2 Integration Studio'is. Seejärel klõpsake nuppu Käivita, kui olete täitnud vajaliku välja, näiteks ühiku testpordi, serveri täitmistee jne.

Loodud Unit Test Suite'i käitamine

Pärast seda näete tööriistakonsoolis testimisserveri käivitusloke ja see prindib antud üksuse testkomplekti kokkuvõtte, kasutades testimisserveri vastust.

Käivitatud Unit Test Suite konsooli väljund (edukas)

Vaadake, kui hõlpsalt saab üksuse testimist Integratsiooni Stuudios teha. Ongi! Nüüd olete integratsioonilahendust WSO2 Integration Studio edukalt testinud.

Proovime nüüd seda ühikatset valeandmetega, mis muudab väitefaasi nurjumiseks ja vaatame, kuidas üksusetesti server reageerib. Eelmises testimisjuhises olen 15 ja 25 liitmise eeldatavaks väärtuseks määranud 35. Uuendame seda väärtuseks 40 ja vaatame.

Käivitatud Unit Test Suite'i konsooli väljund (tõrge)

Vaadake, kui nutikas see on. Siin näitab ühiku testimise aruanne, millises faasis see ebaõnnestus ja mis on ebaõnnestumise põhjus. Alates EI 7.0.0 saate seda funktsiooni kasutada integratsioonilahenduste kiiremaks ja hõlpsamaks testimiseks WSO2 Integration Studio abil. Loodetavasti aitab kõik see artikkel teil avastada, kuidas ühikatsetused integratsiooni stuudios toimivad. Kui teil on küsimusi, kommenteerige allpool. Terviseks!

Kasulikud lingid