Plokiahela testimise õpetus
⚡ Nutikas kokkuvõte
Plokiahela testimine valideerib detsentraliseeritud rakendusi ja nutikaid pettusitracts ja hajuspearaamatud turvalisuse, funktsionaalse täpsuse ja jõudluse kinnitamiseks igas sõlmes, tagades muutumatute tehingute korrektse toimimise enne plokiahela võrgu tootmiskeskkonda jõudmist.

Mis on Blockchain?
Plokiahel on jagatud andmebaas, mis salvestab pidevalt kasvavat kirjete loendit, mida nimetatakse plokkideks. Iga plokk sisaldab eelmise ploki räsi ja ajatempli.
Blockchaini funktsioonid hõlmavad
- Detsentraliseeritud süsteem: kasulik erinevates tööstusharudes, nagu rahandus, kinnisvara jne.
- Parem turvalisus: kasutab tehingute lõpuleviimiseks ja autentimiseks mitut sõlme
- Autentsus: võimaldab unikaalsel algoritmil andmeid töödelda
- Suurenenud võimsus: Suurendab kogu võrgu läbilaskevõimet
Plokiahela tüüp
Siin on kolme tüüpi plokiahelat:
Konsortsiumi plokiahel:
Mitmel organisatsioonil on juurdepääs võrgule ja selle üle volitused. See on täielikult detsentraliseeritud süsteem.
Avalik plokiahel:
Seda tüüpi plokiahela testimisel on kõigil juurdepääs võrgule ja nad saavad osaleda konsensuses. Selle detsentraliseeritud süsteem.
Privaatne plokiahel:
Ainult üksikutel organisatsioonidel on juurdepääs võrgule ja volitused selle üle. See on osaliselt detsentraliseeritud süsteem.
| avalik | Era- | Konsortsium | |
|---|---|---|---|
| juurdepääs | Keegi | Üks organisatsioon | Mitmekordne organisatsioon |
| Osalejad | Loata anonüümne | Lubatud teadaolevad identiteedid | Lubatud teadaolevad identiteedid |
| TURVALISUS | Konsensusmehhanism Töö tõestus/Pinna tõestus | Eelnevalt heakskiidetud osalejad Hääletamine/mitmeparteiline konsensus | Eelnevalt heakskiidetud osalejad Hääletamine/mitmeparteiline konsensus |
| Tehingu kiirus | Aeglane | Kergem ja kiirem | Kergem ja kiirem |
Plokiahela peamised komponendid
Sõlme rakendus
Iga sõlm peab installima ja käivitama arvutirakenduse, mis vastab ökosüsteemile, milles nad soovivad osaleda
Jagatud Ledger
Andmestruktuuri (pearaamatut) hallatakse sõlmerakenduses. Ökosüsteemi sisu saab vaadata, kui sõlmerakendus on töörežiimis.
Konsensuse algoritm
Konsensusalgoritm on rakendatud sõlmerakenduse osana, pakkudes "mängureegleid" selle kohta, kuidas ökosüsteem jõuab pearaamatu ühele vaatele.
Virtuaalne masin
Abstracjuhistega juhitava masina loomine ja rakendamine osana sõlmerakendusest, mida käitab iga ökosüsteemi osaleja.
Kuidas Blockchain töötab?
Blockchaini eelised
- Aegasäästev: Blockchain vähendab tehinguaega päevadelt minutiteni. Tehingulahendus on kiirem, kuna see ei nõua keskasutuse kontrollimist.
- Kuluefektiivne: Plokiahela tehingud vähem käsitletavad. Osalejad saavad väärtuslikke esemeid otse vahetada. Blockchain eemaldab dubleeritud pingutused, kuna osalejatel on juurdepääs jagatud pearaamatule.
- Suurendage turvalisust: Blockchaini turvakaitse pettuste ja küberkuritegevuse vastu.
Väljakutsed plokiahela testimisel
- Tehnoloogia mõistmine- Blockchain on uus tehnoloogia ja tehnoloogia mõistmine domeeni teadmistega on plokiahela rakenduse testimisel väga oluline
- Plokiahela testimise tööriistade puudumine- Plokiahelapõhiste rakenduste testimine on seotud tööriistadega. Õige tööriista valimine vastavalt rakendusele on üks olulisi otsuseid.
- Testistrateegia määratlemine- Nagu iga rakendus, töötades välja ka Blockchaini rakenduse testistrateegia. See on üks suurimaid väljakutseid, kuna testimisstrateegia nõuab põhjalikke teadmisi ning tehnoloogia ja rakenduse mõistmist.
- Ploki ja keti suurus– Lisaks standardsetele testimistele, tööriistadele ja parimatele tavadele on oluline ka ploki suuruse ja ahela suuruse testimine. Plokiahela rakendused võivad ebaõnnestuda ilma ploki suuruse ja ahela suuruse nõuetekohase kinnitamiseta.
- Integratsiooni testimine– Kuna plokiahela rakenduses on mitu komponenti, tuleks integratsiooni testida korralikult ja sageli, et kontrollida, kas kõik komponendid on korralikult integreeritud, et vältida tõrkeid.
- Jõudlus ja koormus– Jõudlus- ja koormustestide tegemata jätmine annab vähe või üldse mitte mingit ülevaadet sellest, kuidas plokiahela rakendus toimib nii tootmises kui ka konkreetsete töökoormuste ja võrgutingimuste korral.
- TURVALISUS- Andmete turvamine peaks olema plokiahela rakenduses kõige olulisem. Blockchain võib olla osa erinevatest sektoritest, nagu tervishoid, rahandus jne. igasugused pahatahtlikud rünnakud võivad mõjutada Blockchaini rakendust
Plokiahela testimise etapid
Algusfaas:
- Blockchaini mõistmine Architektuur: Selles etapis mõistame ja analüüsime äri- ja funktsionaalseid nõudeid. See kirjeldab rakenduse käitumist ja seda, kuidas kasutaja rakendusega suhtleb
- Täielik testimisstrateegia koostamine: selles etapis kirjeldame rakenduse testimise testimisviisi. Seda tuleks teha üksikasjalikult, et kõik eesmärgid oleksid täielikult kaetud.
Projekteerimise etapp:
- Testjuhtumi loomine: selles faasis kirjutab QA meeskond õigete sammudega testjuhtumid. Need testijuhtumid vaatab üle Business Analyst (BA).
- Testandmete loomineSelles etapis luuakse või töödeldakse testandmeid.traceelmisest keskkonnast ärinõuetele vastavaks muudetud. Testiandmeid saab luua käsitsi või automatiseerimistööriistade abil.
- Keskkonna seadistamine: selles etapis konfigureeritakse testimiskeskkond ettevõtte või rakenduse vajadusena
- Jõudlusmõõdikud: jõudlusmõõdikud esindavad teavet rakenduse, süsteemi või komponentide toimivuse kohta
Testimisfaas:
- API testimine: API testimisel tagame, et plokiahela ökosüsteemi rakenduste vaheline interaktsioon on ootuspärane
- Plokkide testimine: Nõuetekohase koostöö tagamiseks tuleks kõiki võrgu plokke eraldi testida.
- Funktsionaalne testimineFunktsionaalse testimise käigus hindame plokiahela erinevate funktsionaalsete osade (nt nutikate kontrollerite) töödtracts).
- Jõudluse testimine: üksikasjad, nagu võrgu latentsusaeg, mis põhineb ploki suurusel, võrgu suurusel, tehingu eeldataval suurusel ja päringul kulub väljundi tagastamiseks spetsiaalse autentimisprotokolliga
- Turvalisuse testimine: Sellega tagame, et rakendus on rünnakute suhtes haavatav ja süsteemid saavad andmeid kaitsta ning on võimelised toime tulema pahatahtlike rünnakutega jne.
- Integratsiooni testimine: Integratsioonitestimisel tagame, et kõik rakenduse komponendid on korralikult integreeritud ja toimivad õigesti
- Nutikas Contract-testimineNutikas ContracT-testimine seisneb äriloogika ja protsesside detailse funktsionaalse testimise läbiviimises.
Aruandefaas:
- Projekti koondaruanne: kirjeldage üldist ülevaadet projekti üksikasjadest, projekti kuupäevadest, maksumusest ja ülesande üksikasjadest
- Nutikas ContracTestimise aruanneSee aruanne kirjeldab nutika pettuse üksikasju.tract, andmete ja reeglite töötlemine
- Turvatesti aruanne: näitab kliendile ja kõrgemale juhtkonnale mõeldud ametlikus dokumendis haavatavat teavet. Aruanne sisaldab testimise kuupäeva, katseandmeid ja leitud haavatavuste kokkuvõtet
- jõudluskontrolli aruanne: see aruanne näitab üksikasju selliste rakenduste toimivuse kohta nagu kiirus, mastaapsus, töökindlus jne.
Blockchaini rakenduse peamised testimistüübid
Funktsionaalne testimine
Funktsionaaltestimine mängib olulist rolli plokiahela testimises, kuna see aitab hinnata ärinõudeid, protsesse ja kasutusjuhtude tõhusust. Allpool on loetletud komponendid, mida saab funktsionaalse testimise osana testida:
- Ploki suurus ja keti suurus
- Ploki lisamine
- kuupäev Transmission
Integratsiooni testimine
Blockchaini rakendus töötab mitmes keskkonnas. Seega on oluline testida süsteemidevahelisi ühendusi
Jõudluse testimine:
See aitab eelnevalt tuvastada riist- ja tarkvara kitsaskohad. See võib samuti aidata teil välja selgitada rakenduse pilves või muudes keskkondades käitamise võimalikud kulud.
Sõlme testimine
Sujuva koostöö tagamiseks tuleb võrgu kõiki erinevaid sõlmpunkte iseseisvalt testida.
API testimine:
Rakenduse programmeerimisliides testib plokiahela ökosüsteemis olevate rakenduste vahelist koostoimet. API testimine tagab, et päringud ja vastused on vormindatud ja töötavad õigesti.
Plokiahela testimise tööriistad
Siin on mõned olulised plokiahela testimise tööriistad:
1)Ethereum Testija:
See on avatud lähtekoodiga testimisraamatukogu, mis on saadaval GitHubi repositooriumis. Seda on lihtne seadistada ja see toetab hallatavalt erinevaid testimisnõudeid.
2) Ganache:
Varem tuntud kui TestRPC, on laialdaselt kasutatav testimisraamatukogu. Ethereum koostraclokaalselt. See toimib nii, et loob omamoodi võltsplokiahela, mis annab sulle juurdepääsu kontodele, mida saad testimiseks kasutada.
3) Hyperledgeri helilooja:
Hyperledger Composer on avatud lähtekoodiga tööriist, mis aitab arendajatel luua plokiahela rakendusi. Selle tööriista abil saame teostada peamiselt kolme tüüpi testimist: interaktiivset testimist, automatiseeritud ühikutestimist ja süsteemitestimist. Kui olete huvitatud plokiahela rakenduste loomise ja selliste tööriistadega nagu Hyperledger Composer töötamise õppimisest, vaadake seda juhendit aadressil kuidas saada plokiahela arendajaks et alustada oma teekonda selles põnevas valdkonnas.




