Terraform-kód tesztelése
A Terraform lehetővé teszi a felhőinfrastruktúra definícióját, előzetes verzióját és üzembe helyezését. A Terraform használatával konfigurációs fájlokat hozhat létre HCL-szintaxissal. A HCL szintaxissal megadhatja a felhőszolgáltatót – például az Azure-t – és a felhőinfrastruktúra elemeit. A konfigurációs fájlok létrehozása után létrehoz egy végrehajtási tervet , amely lehetővé teszi az infrastruktúra változásainak előzetes megtekintését az üzembe helyezés előtt. A módosítások ellenőrzése után alkalmazza a végrehajtási tervet az infrastruktúra üzembe helyezésére.
A Terraform egy Infrastruktúra kódként (IaC) eszköz. Ez az eszközkategória arra utal, hogy a Terraform-fájlokat ugyanúgy kezeli, mint a projekt forráskódját. A folyamat része a verziószámozás és a forráskód-vezérlés. Emellett a tesztelésnek is a folyamat részét kell képeznie. Ez a cikk áttekintést nyújt a Terraform-projekteken futtatható tesztek különböző típusairól.
Integrációs tesztelés implementálása
Az integrációs tesztek ellenőrzik, hogy az újonnan bevezetett kódmódosítások nem szegik-e meg a meglévő kódot. A DevOpsban a folyamatos integráció (CI) egy olyan folyamatra utal, amely a teljes rendszert létrehozza a kódbázis módosításakor – például valaki, aki egy pr-t szeretne egyesíteni egy Git-adattárral. Az alábbi lista az integrációs tesztek gyakori példáit tartalmazza:
- Statikus kódelemzési eszközök, például lint és formátum.
- A terraform-ellenőrzés futtatásával ellenőrizze a konfigurációs fájl szintaxisát.
- Futtassa a Terraform-tervet , hogy a konfiguráció a várt módon működjön.
Egységtesztelés implementálása
Az egységtesztek biztosítják, hogy a program egy adott része vagy funkciója megfelelően működjön. Az egységteszteket a funkció fejlesztője írja. Ezt a tesztelési típust tesztalapú fejlesztésnek vagy TDD-nek is nevezik, amely folyamatos, rövid fejlesztési ciklusokat foglal magában. A Terraform-projektek kontextusában az egységtesztelés úgy is lehetséges, hogy a terraform plan
generált tervben elérhető tényleges értékek megegyeznek a várt értékekkel.
Az egységtesztelés különösen hasznos lehet, ha a Terraform-modulok egyre összetettebbé válnak:
- Dinamikus blokkok létrehozása
- Hurkok használata
- Helyi változók kiszámítása
Az integrációs tesztekhez hasonlóan az egységtesztek is sokszor szerepelnek a folyamatos integrációs folyamatban.
Megfelelőségi tesztelés implementálása
A megfelelőség tesztelésével biztosítható, hogy a konfiguráció megfeleljen a projekthez meghatározott szabályzatoknak. Meghatározhatja például az Azure-erőforrások geopolitikai elnevezési konvencióit. Vagy azt is megteheti, hogy a virtuális gépeket a rendszerképek egy meghatározott részhalmazából szeretné létrehozni. Ezeknek a szabályoknak a kikényszerítéséhez megfelelőségi tesztelés szükséges.
A megfelelőségi tesztelést általában a folyamatos integrációs folyamat részeként definiálják.
Végpontok közötti (E2E) tesztelés implementálása
Az E2E-tesztek ellenőrzik, hogy egy program működik-e az éles környezetben való üzembe helyezés előtt. Példaforgatókönyv lehet egy Terraform-modul, amely két virtuális gépet helyez üzembe egy virtuális hálózaton. Előfordulhat, hogy meg szeretné akadályozni, hogy a két gép pingelje egymást. Ebben a példában meghatározhat egy tesztet, amely ellenőrzi a tervezett eredményt az üzembe helyezés előtt.
Az E2E-tesztelés általában háromlépéses folyamat. Először is a konfiguráció egy tesztkörnyezetre lesz alkalmazva. A kód ezután lefut az eredmények ellenőrzéséhez. Végül a tesztkörnyezet újraincializálódik vagy leáll (például felszabadít egy virtuális gépet).
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: