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 |
|
|
|
Résztvevők |
|
|
|
Biztonság |
|
|
|
Tranzakció sebessége |
|
|
|
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.