Blockchain tesztelési bemutató

Tartalomjegyzék:

Anonim

Mi az a Blockchain?

A Blockchain egy megosztott adatbázis-tároló, amely folyamatosan növekszik a rekordok listája, az úgynevezett blokkok. Minden blokk tartalmazza az előző blokk kivonatát és időbélyegét.

Ebben az oktatóanyagban megtudhatja:

  • Mi az a Blockchain?
  • A Blockchain jellemzői a következők
  • A Blockchain típusa
  • A blokklánc fő alkotóelemei
  • A Blockchain előnyei
  • Kihívások a blokklánc-tesztelésben
  • A blokklánc tesztelés fázisai 7
  • Kulcs tesztelési típusok a Blockchain alkalmazásban 10
  • Blockchain tesztelő eszközök 10

A Blockchain jellemzői a következők

  • Decentralizált rendszer : előnyös különféle iparágakban, mint például a pénzügy, az ingatlan stb.
  • Jobb biztonság : Több csomópontot használ a tranzakciók befejezéséhez és hitelesítéséhez
  • Hitelesség : Lehetővé teszi az egyedi algoritmus adatfeldolgozását
  • Megnövelt kapacitás : Növeli a teljes hálózat kapacitását

A Blockchain típusa

A Blockchain három típusa van:

Konzorcium Blockchain:

Több szervezetnek lesz hozzáférése és jogosultsága a Hálózaton keresztül. Teljesen decentralizált rendszer

Nyilvános blokklánc:

Az ilyen típusú blokklánc-tesztelés során mindenki hozzáférhet a hálózathoz, és részt vehet a konszenzusban. Decentralizált rendszere.

Privát blokklánc:

Csak az egyedüli szervezetek rendelkeznek hozzáféréssel és jogosultsággal a Hálózaton. Részben decentralizált rendszer.

Nyilvános Magán Konzorcium
Hozzáférés
  • Bárki
  • Egységes szervezet
  • Több szervezet
Résztvevők
  • Engedély nélküli
  • Névtelen
  • Engedélyezett
  • Ismert identitások
  • Engedélyezett
  • Ismert identitások
Biztonság
  • Konszenzus mechanizmus
  • Munka igazolása / Verem igazolása
  • Előre jóváhagyott résztvevők
  • Szavazás / többpárti konszenzus
  • Előre jóváhagyott résztvevők
  • Szavazás / többpárti konszenzus
Tranzakció sebessége
  • Lassú
  • Könnyebb és gyorsabb
  • Könnyebb és gyorsabb

A blokklánc fő alkotóelemei

Csomópont alkalmazás

Minden csomópontnak telepítenie és futtatnia kell egy olyan számítógépes alkalmazást, amely meghatározza azt az ökoszisztémát, amelyben részt kíván venni

Megosztott főkönyv

Az adatszerkezetet (főkönyvet) a csomópontalkalmazás kezeli. Az ökoszisztéma tartalma megtekinthető, ha a csomópontalkalmazás futó állapotban van.

Konszenzus algoritmus

A konszenzusos algoritmust a csomópont alkalmazás részeként valósítják meg, biztosítva a „játékszabályokat” arra vonatkozóan, hogy az ökoszisztéma hogyan jut el a főkönyv egyetlen nézetéhez.

Virtuális gép

Az utasításokkal működtetett gép absztrakciója, amely az ökoszisztéma minden résztvevője által futott csomópont alkalmazás részeként valósul meg.

Hogyan működik a Blockchain?

A Blockchain előnyei

  • Időmegtakarítás : A Blockchain napokról percekre csökkenti a tranzakciók idejét. A Tranzakció megoldás gyorsabb, mert nem igényli a központi hatóság általi ellenőrzést.
  • Költséghatékony: A blokklánc-tranzakciók kevesebb kezelhetőséggel rendelkeznek. A résztvevők értéket cserélhetnek közvetlenül. A Blockchain eltávolítja az erőfeszítések duplikációját, mert a résztvevők hozzáférnek egy megosztott főkönyvhöz.
  • Növelje a biztonságot : A Blockchain biztonsági védelme a csalások és a számítógépes bűnözés ellen.

Kihívások a blokklánc-tesztelésben

  • A technológia megértése - A Blockchain egy új technológia, és a terület megismerésével a technológia megértése nagyon fontos a Blockchain alkalmazás tesztelésében
  • A Blockchain tesztelő eszközök hiánya - A Blockchain alapú alkalmazások tesztelése az eszközökről szól. A megfelelő eszköz kiválasztása az alkalmazás szerint az egyik fontos döntés.
  • Tesztstratégia meghatározása - Mint minden alkalmazás, úgy a Blockchain alkalmazás tesztstratégiájának megtervezése is. Ez az egyik legnagyobb kihívás, mivel a tesztstratégia mélyreható ismereteket és megértést követel meg a technológiáról és az alkalmazásról.
  • Blokk- és láncméret - A standard teszteléssel, az eszközökkel és a bevált gyakorlatokkal együtt a blokkméret és a láncméret tesztelése is fontos. A blokklánc-alkalmazások meghiúsulhatnak a blokkméret és a láncméret megfelelő ellenőrzése nélkül.
  • Integrációs tesztelés - Mivel a Blockchain alkalmazásban több összetevő vesz részt, az integráció tesztelését megfelelően és gyakran kell elvégezni annak ellenőrzésére, hogy az összes alkatrész megfelelően van-e integrálva a hibák elkerülése érdekében.
  • Teljesítmény és terhelés - A teljesítmény és a terhelés tesztelésének sikertelensége alig vagy egyáltalán nem enged betekintést abba, hogy a Blockchain alkalmazás hogyan teljesít mind a gyártásban, mind pedig a speciális munkaterhelések és hálózati feltételek mellett.
  • Biztonság - Az adatok biztonságának a legfontosabbnak kell lennie a Blockchain alkalmazásban. A Blockchain különféle szektorok része lehet, mint például az egészségügy, a pénzügyek stb., Bármilyen típusú rosszindulatú támadás hatással lehet a Blockchain alkalmazásra

A Blockchain tesztelés fázisai

Kezdési szakasz:

  • A Blockchain architektúra megértése : Ebben a szakaszban megértjük és elemezzük az üzleti és funkcionális követelményeket. Ez leírja az alkalmazás viselkedését és a felhasználó interakcióját az alkalmazással
  • Teljes tesztstratégia tervezés : Ebben a szakaszban leírjuk az alkalmazás tesztelésének megközelítését. Ezt részletesen meg kell tenni, hogy minden célkitűzés teljes körűen lefedett legyen.

Tervezési szakasz:

  • Tesztes eset létrehozása : Ebben a szakaszban a minőségbiztosítási csoport megfelelő lépésekkel írja a teszteseteket. Ezeket a teszteseteket az üzleti elemző (BA) vizsgálja felül.
  • Tesztadatok létrehozása : Ebben a szakaszban a tesztadatokat az üzleti követelményeknek megfelelően hozzák létre vagy vonják ki a korábbi környezetből. A tesztadatokat manuálisan vagy automatizálási eszközökkel lehet létrehozni.
  • Környezet beállítása : Ebben a lépésben a tesztkörnyezetet üzleti vagy alkalmazás igényeként konfigurálják
  • Teljesítménymutatók : A teljesítménymutatók az információkat az alkalmazás, a rendszer vagy az alkatrészek teljesítménye szempontjából képviselik

Tesztelési fázis:

  • API tesztelés : Az API tesztelés során biztosítjuk, hogy a blokklánc ökoszisztémában lévő alkalmazások közötti kölcsönhatás a vártnak megfelelő legyen
  • Blokk tesztelés : A hálózat összes blokkját egyedileg kell tesztelni a megfelelő együttműködés biztosítása érdekében.
  • Funkcionális tesztelés : A funkcionális tesztelés során a Blockchain különféle funkcionális részeinek munkáját értékeljük (pl. Intelligens szerződések).
  • Teljesítménytesztelés : Részletek, például a hálózati késés a blokkméret, a hálózat mérete, a várható tranzakcióméret és a lekérdezés mennyi idő alatt tér vissza a kimenethez a speciális hitelesítési protokollal
  • Biztonsági tesztelés : Ebben biztosítjuk, hogy az alkalmazás kiszolgáltatott legyen a támadásoknak, és a rendszerek megvédjék az adatokat, és képesek kezelni rosszindulatú támadásokat stb.
  • Integrációs tesztelés : Az integrációs tesztelés során biztosítjuk, hogy az alkalmazás összes összetevője megfelelően legyen integrálva, és megfelelően végezze el a műveleteket
  • Intelligens szerződéses tesztelés : Az intelligens szerződéses tesztelés az üzleti logika és folyamat részletes funkcionális teszteléséről szól.

Jelentés szakasza:

  • Projekt összefoglaló jelentés : Írja le a projekt részleteinek átfogó áttekintését, a projekt dátumát, költségét és a feladat részleteit
  • Intelligens szerződés tesztelési jelentés : Ez a jelentés az intelligens szerződés, az adatok és a szabályok feldolgozásának részleteit ismerteti
  • Biztonsági teszt jelentés : A kiszolgáltatott információkat hivatalos dokumentumban mutatja meg az ügyfél és a felső vezetés számára. A jelentés tartalmazza a tesztelés dátumát, a tesztadatokat és a talált sebezhetőségek összefoglalását
  • Teljesítményteszt jelentés : Ez a jelentés az alkalmazások teljesítményével kapcsolatos részleteket mutatja, például a sebességet, a méretezhetőséget, a megbízhatóságot stb.

Kulcs tesztelési típusok a Blockchain alkalmazásban

Funkcionális tesztelés

A funkcionális tesztelés fontos szerepet játszik a Blockchain tesztelésben, mivel segíti az üzleti követelmények, folyamatok és a felhasználási esetek hatékonyságának értékelését. Az alábbiakban bemutatjuk azokat a komponenseket, amelyek a funkcionális tesztelés részeként tesztelhetők: 1) Blokkméret és Láncméret 2) Blokk hozzáadása 3) Adatátvitel

Integrációs tesztelés

A blockchain alkalmazás több környezetben is működik. Tehát fontos tesztelni a rendszerek közötti kapcsolatokat

Teljesítményfelmérés:

Segít a hardver és szoftver szűk keresztmetszeteinek előzetes azonosításában. Ez segíthet az alkalmazás felhőben vagy más környezetekben történő futtatásának lehetséges költségeiben is.

Csomópont tesztelése

A zökkenőmentes együttműködés érdekében a hálózat összes különböző csomópontját függetlenül kell tesztelni.

API tesztelés:

Az Application Programming Interface teszteli az alkalmazások közötti kölcsönhatást a blokklánc ökoszisztémában. Az API tesztelés biztosítja, hogy a kérések és válaszok formázása és megfelelő működése megtörténjen.

Blockchain tesztelő eszközök

Íme néhány importáló Blockchain tesztelő eszköz:

1) Ethereum tesztelő:

Ez egy nyílt forráskódú tesztkönyvtár, amely a GitHub repo-n érhető el. Könnyen kezelhető API támogatással állítható be a különböző tesztelési követelményekhez.

2) Ganache:

Egy korábbi nevén Testrpc , a széles körben használt könyvtár tesztelésére Ethereum szerződések helyben. Úgy működik, hogy felpörget egyfajta ál- B zárláncot, amely hozzáférést biztosít a T esteléshez használható fiókokhoz .

3) Hyperledger zeneszerző:

A Hyperledger Composer egy nyílt forráskódú eszköz, amely segít a fejlesztőknek a blockchain alkalmazások felépítésében. Ennek az eszköznek a segítségével főleg háromféle tesztelést hajthatunk végre: interaktív tesztelést, automatizált egységet és rendszer tesztelést.

Ez a cikk Suman Dass közreműködésével készült.