Fejlesztői proxy és egységtesztek

A fejlesztői proxy- és egységtesztek különböző célokat szolgálnak a tesztelési stratégiában. Bár mindkettő értékes, alapvetően különböző módokon tesztelik az alkalmazást. A közös használat átfogó áttekintést nyújt az alkalmazás viselkedéséről.

Különböző tesztelési módszerek

Az egységtesztek izolált kódrészleteket tesztelnek kiszúrt függőségekkel. Amikor egy API-t meghívó kód egységtesztet ír, általában a HTTP-ügyfelet szimulálja, hogy előre megadott válaszokat adjon vissza. Ezzel a módszerrel ellenőrizheti, hogy a kód megfelelően kezeli-e az adott forgatókönyveket.

A Dev Proxy szimulált API-viselkedéssel teszteli a futó alkalmazást. Ahelyett, hogy a kódot mockolná, a Dev Proxy elfogja a tényleges HTTP-kéréseket, és valós körülményeket szimulál, mint például hibákat, sebességkorlátozást és késleltetést. Ez a megközelítés az alkalmazás egészét teszteli, beleértve a kód és az API közötti összes réteget.

Mikor érdemes használni az egyes lehetőségeket

A következő esetekben használjon egységteszteket :

  • Adott függvény viselkedésének és peremes eseteinek tesztelése
  • Az üzleti logika elkülönített ellenőrzése
  • Gyors visszajelzés a fejlesztés során
  • Magas kódlefedettség elérése
  • Adott hibakezelési útvonalak tesztelése

Ha a következőt szeretné használni, használja a Dev Proxyt :

  • Teszteld teljes körűen a futó alkalmazásodat
  • Nehezen reprodukálható feltételek szimulálása, például szabályozás vagy hálózati problémák
  • Valós újrapróbálkozás logikája és hibakezelésének tesztelése az összes rétegben
  • Az alkalmazás futtatása terhelés alatt véletlenszerű hibákkal
  • A rugalmasság ellenőrzése a kód módosítása nélkül

A fejlesztői proxy előnyei

A Dev Proxy számos előnyt kínál a hagyományos imitáló megközelítésekkel szemben.

  • Nincs szükség kódmódosításra. Nem kell módosítania az alkalmazást a Dev Proxy használatához. A hálózat szintjén működik, és transzparensen elfogja a HTTP-kéréseket.
  • Bármilyen HTTP-kódtárral működik. Egyes HTTP-kódtárakról hírhedten nehéz gúnyt űzni. A Dev Proxy használatakor nem számít, hogy melyik tárat használja – RestSharp, HttpClient, Axios vagy bármilyen más. A dev proxy a kódtártól függetlenül minden HTTP-forgalmat elfog.
  • Teszteli a valódi alkalmazást. A szimulált HTTP-ügyfelekkel végzett egységtesztek nem tesztelik az újrapróbálkozási logikát, a kapcsolatkezelést vagy az időtúllépési viselkedést. A Dev Proxy az összes függőségével teszteli a valódi alkalmazást.
  • Könnyebb megérteni a hibákat. Amikor egy futó alkalmazásban igény szerint kiválthat hibákat, könnyebben megértheti, hogyan kezeli az alkalmazás a hibákat, és hibakeresés céljából használhatja őket.
  • Összetett feltételeket szimulál. A Dev Proxy szimulálhatja azokat a feltételeket, amelyek nem praktikusak a modellekkel való reprodukáláshoz, például a terhelés alatti véletlenszerű hibákhoz, a fokozatos szabályozáshoz vagy az időszakos hálózati problémákhoz.

Kiegészítő tesztelési stratégia

A leghatékonyabb megközelítés mindkét tesztelési módszert egyesíti:

  • Egységtesztek használata a logikához. Egységtesztek írása az üzleti logika, az adatátalakítások és a konkrét hibakezelési kódútvonalak ellenőrzéséhez.
  • Használja a Dev Proxyt a rugalmasság érdekében. A Dev Proxy használatával ellenőrizze, hogy az alkalmazás helyesen kezeli-e a valós API-feltételeket – szabályozást, hibákat és lassú válaszokat.
  • Használja mindkettőt a CI/CD-ben. Egységtesztek futtatása minden véglegesítés gyors visszajelzéséhez. A Dev Proxy használata integrációs tesztekben a rugalmassági problémák megoldásához az üzembe helyezés előtt.

Az egységtesztek alapján megállapíthatja, hogy a kód helyes-e. A Fejlesztői proxy megmutatja, hogy az alkalmazás rugalmas-e. Mindkettőre szükség van.

Következő lépések