Τι είναι το Blockchain;
Το Blockchain είναι ένα κοινόχρηστο κατάστημα βάσεων δεδομένων που αυξάνει συνεχώς μια λίστα εγγραφών, που ονομάζεται μπλοκ. Κάθε μπλοκ περιέχει έναν κατακερματισμό του προηγούμενου μπλοκ και μια χρονική σήμανση.
Σε αυτό το σεμινάριο, θα μάθετε:
- Τι είναι το Blockchain;
- Τα χαρακτηριστικά του Blockchain περιλαμβάνουν
- Τύπος Blockchain
- Κύρια συστατικά ενός blockchain
- Πλεονεκτήματα του Blockchain
- Προκλήσεις στη δοκιμή Blockchain
- Φάσεις δοκιμής Blockchain 7
- Βασικοί τύποι δοκιμών στην εφαρμογή Blockchain 10
- Εργαλεία δοκιμής Blockchain 10
Τα χαρακτηριστικά του Blockchain περιλαμβάνουν
- Αποκεντρωμένο σύστημα : Ευεργετικό σε διάφορες βιομηχανίες όπως χρηματοδότηση, ακίνητα κ.λπ.
- Καλύτερη ασφάλεια : Χρησιμοποιεί πολλούς κόμβους για την ολοκλήρωση και τον έλεγχο ταυτότητας συναλλαγών
- Αυθεντικότητα : Επιτρέπει στον μοναδικό αλγόριθμο την επεξεργασία δεδομένων
- Αυξημένη χωρητικότητα : Αυξάνει την χωρητικότητα ολόκληρου του δικτύου
Τύπος Blockchain
Εδώ είναι τρεις τύποι Blockchain:
Κοινοπραξία Blockchain:
Πολλοί οργανισμοί θα έχουν πρόσβαση και εξουσιοδότηση μέσω του Δικτύου. Είναι πλήρως αποκεντρωμένο σύστημα
Δημόσιο Blockchain:
Σε αυτόν τον τύπο δοκιμών blockchain, όλοι έχουν πρόσβαση στο Δίκτυο και μπορούν να λάβουν μέρος στο Consensus. Το Αποκεντρωμένο Σύστημά του.
Ιδιωτικό Blockchain:
Μόνο μεμονωμένοι οργανισμοί θα έχουν πρόσβαση και εξουσία μέσω του δικτύου. Είναι ένα μερικώς αποκεντρωμένο σύστημα.
Δημόσιο | Ιδιωτικός | Κοινοπραξία | |
---|---|---|---|
Πρόσβαση |
|
|
|
Συμμετέχοντες |
|
|
|
Ασφάλεια |
|
|
|
Ταχύτητα συναλλαγής |
|
|
|
Κύρια συστατικά ενός blockchain
Εφαρμογή κόμβου
Κάθε κόμβος πρέπει να εγκαταστήσει και να εκτελέσει μια εφαρμογή υπολογιστή καθορισμένη για το οικοσύστημα στο οποίο επιθυμεί να συμμετάσχει
Κοινόχρηστο καθολικό
Μια δομή δεδομένων (καθολικό) διαχειρίζεται μέσα στην εφαρμογή κόμβου. Τα περιεχόμενα για το οικοσύστημα μπορούν να προβληθούν μόλις η εφαρμογή κόμβου βρίσκεται σε κατάσταση λειτουργίας.
Αλγόριθμος συναίνεσης
Ο αλγόριθμος συναίνεσης εφαρμόζεται ως μέρος της εφαρμογής κόμβου, παρέχοντας τους «κανόνες του παιχνιδιού» για το πώς το οικοσύστημα θα φτάσει σε μια ενιαία προβολή του καθολικού.
Εικονική μηχανή
Αφαίρεση ενός μηχανήματος που λειτουργεί με οδηγίες και Υλοποιείται ως μέρος της εφαρμογής κόμβου που εκτελεί κάθε συμμετέχων στο οικοσύστημα.
Πώς λειτουργεί το Blockchain;
Πλεονεκτήματα του Blockchain
- Εξοικονόμηση χρόνου : Το Blockchain μειώνει τον χρόνο συναλλαγής από ημέρες σε λεπτά. Η λύση συναλλαγών είναι ταχύτερη επειδή δεν απαιτεί επαλήθευση από μια κεντρική αρχή.
- Οικονομικά αποδοτικό : Συναλλαγές Blockchain λιγότερος χειρισμός. Οι συμμετέχοντες μπορούν να ανταλλάσσουν αντικείμενα αξίας απευθείας. Το Blockchain καταργεί την επανάληψη της προσπάθειας επειδή οι συμμετέχοντες έχουν πρόσβαση σε ένα κοινόχρηστο βιβλίο.
- Αύξηση ασφάλειας : Προστασία ασφάλειας Blockchain από απάτη και έγκλημα στον κυβερνοχώρο.
Προκλήσεις στη δοκιμή Blockchain
- Κατανόηση της τεχνολογίας - Το Blockchain είναι μια νέα τεχνολογία και η κατανόηση της τεχνολογίας με γνώσεις τομέα είναι πολύ σημαντική για τη δοκιμή της εφαρμογής Blockchain
- Έλλειψη εργαλείων δοκιμών Blockchain - Ο έλεγχος εφαρμογών που βασίζεται σε blockchain αφορά τα εργαλεία. Η επιλογή του σωστού εργαλείου σύμφωνα με την εφαρμογή είναι μία από τις σημαντικές αποφάσεις.
- Καθορισμός στρατηγικής δοκιμής - Όπως κάθε εφαρμογή, σχεδιάστε τη στρατηγική δοκιμής για την εφαρμογή Blockchain. Είναι μια από τις μεγαλύτερες προκλήσεις καθώς η στρατηγική δοκιμών απαιτεί σε βάθος γνώση και κατανόηση της τεχνολογίας και της εφαρμογής.
- Μέγεθος μπλοκ και αλυσίδας - Μαζί με τις τυπικές δοκιμές, τα εργαλεία και τις βέλτιστες πρακτικές, η δοκιμή για το μέγεθος μπλοκ και το μέγεθος της αλυσίδας είναι επίσης σημαντική. Οι εφαρμογές Blockchain ενδέχεται να αποτύχουν χωρίς σωστή επικύρωση του μεγέθους του μπλοκ και του μεγέθους της αλυσίδας.
- Έλεγχος ενοποίησης - Δεδομένου ότι υπάρχουν πολλά στοιχεία που εμπλέκονται στην εφαρμογή Blockchain, ο έλεγχος ενοποίησης πρέπει να γίνεται σωστά και συχνά για να ελέγχεται ότι όλα τα στοιχεία είναι σωστά ενσωματωμένα για να αποφευχθούν τυχόν αστοχίες.
- Απόδοση και φόρτωση - Η αποτυχία για δοκιμή απόδοσης και δοκιμής φορτίου δίνει λίγη ή καθόλου εικόνα για την απόδοση της εφαρμογής Blockchain τόσο στην παραγωγή όσο και σε συγκεκριμένους φόρτους εργασίας και συνθήκες δικτύου.
- Ασφάλεια - Η προστασία των δεδομένων θα πρέπει να είναι η πιο σημαντική στην εφαρμογή Blockchain. Το Blockchain μπορεί να είναι μέρος διαφόρων τομέων όπως Υγεία, χρηματοδότηση κ.λπ. κάθε είδους κακόβουλες επιθέσεις μπορεί να επηρεάσει την εφαρμογή Blockchain
Φάσεις δοκιμής Blockchain
Φάση έναρξης:
- Κατανόηση της αρχιτεκτονικής Blockchain : Σε αυτήν τη φάση, κατανοούμε και αναλύουμε τις επιχειρηματικές και λειτουργικές απαιτήσεις. Αυτό περιγράφει τη συμπεριφορά της εφαρμογής και τον τρόπο αλληλεπίδρασης του χρήστη με την εφαρμογή
- Πλήρης σχεδιασμός στρατηγικής δοκιμών : Κατά τη διάρκεια αυτής της φάσης, περιγράφουμε τη δοκιμαστική προσέγγιση για τη δοκιμή μιας εφαρμογής. Αυτό πρέπει να γίνει με λεπτομέρεια, ώστε κάθε στόχος να καλύπτεται πλήρως.
Φάση σχεδιασμού:
- Δημιουργία δοκιμαστικής υπόθεσης : Σε αυτή τη φάση, η ομάδα QA γράφει τις δοκιμαστικές θήκες με κατάλληλα βήματα. Αυτές οι δοκιμές εξετάζονται από το Business Analyst (BA).
- Δημιουργία δοκιμαστικών δεδομένων : Σε αυτήν τη φάση, τα δεδομένα δοκιμών δημιουργούνται ή εξάγονται από το προηγούμενο περιβάλλον έναντι των επιχειρηματικών απαιτήσεων. Τα δεδομένα δοκιμών μπορούν να δημιουργηθούν χειροκίνητα ή χρησιμοποιώντας εργαλεία αυτοματισμού.
- Ρύθμιση περιβάλλοντος : Σε αυτό το βήμα, το περιβάλλον δοκιμών έχει διαμορφωθεί ως ανάγκη για επιχειρήσεις ή εφαρμογές
- Μετρήσεις απόδοσης : Οι μετρήσεις απόδοσης αντιπροσωπεύουν τις πληροφορίες όσον αφορά την απόδοση της εφαρμογής, του συστήματος ή των στοιχείων
Φάση δοκιμής:
- Δοκιμή API : Στις δοκιμές API, διασφαλίζουμε ότι η αλληλεπίδραση μεταξύ εφαρμογών στο οικοσύστημα blockchain είναι όπως αναμένεται
- Δοκιμή μπλοκ : Όλα τα μπλοκ στο Δίκτυο θα πρέπει να δοκιμαστούν ξεχωριστά για να διασφαλιστεί η σωστή συνεργασία.
- Λειτουργική δοκιμή : Στη λειτουργική δοκιμή, αξιολογούμε το έργο διαφόρων λειτουργικών τμημάτων του Blockchain (π.χ. έξυπνα συμβόλαια).
- Δοκιμή απόδοσης : Λεπτομέρειες όπως η καθυστέρηση δικτύου με βάση το μέγεθος του μπλοκ, το μέγεθος του δικτύου, το αναμενόμενο μέγεθος συναλλαγής και πόσο καιρό χρειάζεται ένα ερώτημα για την επιστροφή της εξόδου με το εξειδικευμένο πρωτόκολλο ελέγχου ταυτότητας
- Δοκιμή ασφαλείας : Σε αυτό, διασφαλίζουμε ότι η εφαρμογή είναι ευάλωτη σε επιθέσεις και ότι τα Συστήματα μπορούν να προστατεύσουν τα δεδομένα και να είναι σε θέση να χειρίζονται κακόβουλες επιθέσεις κ.λπ.
- Έλεγχος ενοποίησης : Στη δοκιμή ενοποίησης, διασφαλίζουμε ότι όλα τα στοιχεία της εφαρμογής ενσωματώνονται σωστά και εκτελούν τις ενέργειες κατάλληλα.
- Έξυπνη δοκιμή συμβολαίου : Ο έλεγχος έξυπνης σύμβασης αφορά την εκτέλεση λεπτομερών λειτουργικών δοκιμών της επιχειρηματικής λογικής και της διαδικασίας.
Φάση αναφοράς:
- Έκθεση περίληψης έργου : Περιγράψτε τη συνολική επισκόπηση των λεπτομερειών του έργου, των ημερομηνιών του έργου, του κόστους και των λεπτομερειών εργασίας
- Αναφορά ελέγχου έξυπνης σύμβασης : Αυτή η αναφορά περιγράφει τις λεπτομέρειες της έξυπνης σύμβασης, των δεδομένων και της επεξεργασίας κανόνων
- Αναφορά δοκιμών ασφαλείας : Εμφανίζει ευάλωτες πληροφορίες σε ένα επίσημο έγγραφο για τον πελάτη και την ανώτερη διαχείριση. Η αναφορά περιέχει την ημερομηνία δοκιμής, τα δεδομένα δοκιμών και τη σύνοψη των ευπαθειών που εντοπίστηκαν
- Έκθεση δοκιμής απόδοσης : Αυτή η αναφορά δείχνει τις λεπτομέρειες σχετικά με την απόδοση εφαρμογών όπως ταχύτητα, επεκτασιμότητα, αξιοπιστία κ.λπ.
Βασικοί τύποι δοκιμών στην εφαρμογή Blockchain
Λειτουργική δοκιμή
Η λειτουργική δοκιμή παίζει σημαντικό ρόλο στο Blockchain Testing καθώς βοηθά στην αξιολόγηση επιχειρηματικών απαιτήσεων, διαδικασιών και αποτελεσματικότητας των περιπτώσεων χρήσης. Ακολουθούν τα στοιχεία που μπορούν να δοκιμαστούν ως μέρος της λειτουργικής δοκιμής: 1) Μέγεθος μπλοκ και μέγεθος αλυσίδας 2) Προσθήκη μπλοκ 3) Μετάδοση δεδομένων
Δοκιμή ολοκλήρωσης
Η εφαρμογή Blockchain λειτουργεί σε πολλά περιβάλλοντα. Επομένως, είναι σημαντικό να δοκιμάσετε τις συνδέσεις μεταξύ συστημάτων
Δοκιμή απόδοσης:
Βοηθά στον προσδιορισμό των σημείων συμφόρησης υλικού και λογισμικού εκ των προτέρων. Αυτό μπορεί επίσης να σας βοηθήσει να καταλάβετε το πιθανό κόστος εκτέλεσης της εφαρμογής στο cloud ή σε άλλα περιβάλλοντα.
Δοκιμή κόμβου
Όλοι οι διαφορετικοί κόμβοι στο Δίκτυο πρέπει να δοκιμαστούν ανεξάρτητα για να διασφαλιστεί η ομαλή συνεργασία.
Δοκιμή API:
Η διεπαφή προγραμματισμού εφαρμογών ελέγχει την αλληλεπίδραση μεταξύ εφαρμογών στο οικοσύστημα blockchain. Το API Testing διασφαλίζει ότι τα αιτήματα και οι απαντήσεις έχουν μορφοποιηθεί και λειτουργήσει σωστά.
Εργαλεία δοκιμής Blockchain
Εδώ είναι μερικά εργαλεία εισαγωγής δοκιμών Blockchain:
1) Έλεγχος Ethereum:
Πρόκειται για μια βιβλιοθήκη δοκιμών ανοιχτού κώδικα διαθέσιμη στο GitHub repo. Είναι εύκολο να ρυθμιστεί με διαχειρίσιμη υποστήριξη API για διάφορες απαιτήσεις δοκιμών.
2) Ganache:
Είναι γνωστό νωρίτερα ως Testrpc , είναι η ευρέως χρησιμοποιούμενη βιβλιοθήκη για τον τοπικό έλεγχο των συμβάσεων Ethereum. Λειτουργεί από το γύρισμα ένα είδος παρωδία Β lockchain που σας δίνει πρόσβαση σε λογαριασμούς που μπορείτε να χρησιμοποιήσετε για Τ ΔΙΕΝΕΡΓΕΙΑ ΔΟΚΙΜΩΝ.
3) Συνθέτης Hyperledger:
Το Hyperledger Composer είναι ένα εργαλείο ανοιχτού κώδικα που βοηθά τους προγραμματιστές να δημιουργήσουν εφαρμογές blockchain. Χρησιμοποιώντας αυτό το εργαλείο, μπορούμε να εκτελέσουμε κυρίως τρεις τύπους δοκιμών: διαδραστική δοκιμή, αυτοματοποιημένη μονάδα και δοκιμή συστήματος.
Αυτό το άρθρο συνεισφέρει ο Suman Dass.