what is component testing
Τι είναι το Component Testing που ονομάζεται επίσης Module Testing στο Software Testing:
Ένα στοιχείο είναι η χαμηλότερη μονάδα οποιασδήποτε εφαρμογής. Λοιπόν, δοκιμή συστατικών? όπως υποδηλώνει το όνομα, είναι μια τεχνική δοκιμής της χαμηλότερης ή της μικρότερης μονάδας οποιασδήποτε εφαρμογής.
Ο έλεγχος των συστατικών μερικές φορές αναφέρεται επίσης ως Πρόγραμμα ή Έλεγχος ενότητας.
Μια εφαρμογή μπορεί να θεωρηθεί συνδυασμός και ολοκλήρωση πολλών μικρών μεμονωμένων ενοτήτων. Πριν δοκιμάσουμε ολόκληρο το σύστημα, είναι απαραίτητο να ελέγχεται διεξοδικά κάθε στοιχείο Ή η μικρότερη μονάδα της εφαρμογής.
dvd ripper για windows 10 δωρεάν λήψη
Σε αυτήν την περίπτωση, οι μονάδες ή οι μονάδες ελέγχονται ανεξάρτητα. Κάθε ενότητα λαμβάνει μια είσοδο, κάνει κάποια επεξεργασία και παράγει την έξοδο. Στη συνέχεια, η έξοδος επικυρώνεται έναντι του αναμενόμενου χαρακτηριστικού.
Οι εφαρμογές λογισμικού έχουν τεράστιο χαρακτήρα και είναι μια πρόκληση να δοκιμάσετε ολόκληρο το σύστημα. Μπορεί να οδηγήσει σε πολλά κενά στην κάλυψη των δοκιμών. Ως εκ τούτου, προτού προχωρήσετε σε δοκιμές ενοποίησης ή λειτουργικές δοκιμές, συνιστάται να ξεκινήσετε με δοκιμές συστατικών.
Διαβάστε επίσης=> Διαφορά μονάδας, ενοποίησης και λειτουργικών δοκιμών
Τι θα μάθετε:
- Δοκιμή συστατικών
- Ο στόχος της δοκιμής συστατικών
- Είσοδοι σε δοκιμή επιπέδου συστατικών
- Ποιος κάνει δοκιμές συστατικών;
- Τι δοκιμάζεται στο στοιχείο Δοκιμή δοκιμής;
- Πότε έχει ολοκληρωθεί ο έλεγχος συνιστωσών;
- Στρατηγική δοκιμής συστατικών
- Stubs και προγράμματα οδήγησης
- Ενα παράδειγμα
- Πώς να γράψετε δοκιμαστικά στοιχεία;
- Δοκιμή συστατικών Vs Unit Testing
- Δοκιμή συστατικών Vs Interface Vs Integration Vs Systems
- συμπέρασμα
- Συνιστώμενη ανάγνωση
Δοκιμή συστατικών
Είναι ένα είδος δοκιμής λευκού κουτιού.
Έτσι, η δοκιμή στοιχείων αναζητά σφάλματα και επαληθεύει τη λειτουργία των ενοτήτων / προγραμμάτων που μπορούν να ελεγχθούν ξεχωριστά.
Υπάρχει μια στρατηγική δοκιμής και ένα σχέδιο δοκιμών για δοκιμές στοιχείων. Και, για κάθε στοιχείο, υπάρχει ένα σενάριο δοκιμής που θα αναλυθεί περαιτέρω σε περιπτώσεις δοκιμών. Το παρακάτω διάγραμμα αντιπροσωπεύει το ίδιο:
Ο στόχος της δοκιμής συστατικών
Ο κύριος στόχος της δοκιμής συστατικών είναι η επαλήθευση της συμπεριφοράς εισόδου / εξόδου του αντικειμένου δοκιμής. Διασφαλίζει ότι η λειτουργικότητα του δοκιμαστικού αντικειμένου λειτουργεί σωστά και εντελώς καλά σύμφωνα με την επιθυμητή προδιαγραφή.
Είσοδοι σε δοκιμή επιπέδου συστατικών
Οι τέσσερις σημαντικές εισόδους για δοκιμή επιπέδου συνιστωσών είναι:
- Σχέδιο δοκιμής έργου
- Απαιτήσεις συστήματος
- Προδιαγραφές συστατικών
- Εφαρμογές συστατικών
Ποιος κάνει δοκιμές συστατικών;
Το Component Testing γίνεται από υπηρεσίες QA ή από τον υπεύθυνο δοκιμών.
Τι δοκιμάζεται στο στοιχείο Δοκιμή δοκιμής;
Η δοκιμή στοιχείων μπορεί να λαμβάνει υπόψη την επαλήθευση λειτουργικών ή συγκεκριμένων μη λειτουργικών χαρακτηριστικών των στοιχείων του συστήματος.
Μπορεί να ελέγχει τη συμπεριφορά των πόρων (π.χ. προσδιορισμός διαρροών μνήμης), δοκιμές απόδοσης, δομικές δοκιμές κ.λπ.
Πότε έχει ολοκληρωθεί ο έλεγχος συνιστωσών;
Η δοκιμή στοιχείων πραγματοποιείται μετά από δοκιμή μονάδας.
Τα στοιχεία δοκιμάζονται μόλις δημιουργηθούν, οπότε υπάρχουν πιθανότητες τα αποτελέσματα που ανακτώνται από ένα υπό εξέταση στοιχείο, να εξαρτώνται από άλλα στοιχεία που με τη σειρά τους δεν έχουν αναπτυχθεί από τώρα.
Ανάλογα με το μοντέλο κύκλου ζωής ανάπτυξης, οι δοκιμές εξαρτημάτων μπορούν να πραγματοποιηθούν μεμονωμένα με άλλα συστατικά του συστήματος. Η απομόνωση γίνεται για την αποφυγή εξωτερικών επιρροών.
Για να δοκιμάσουμε αυτό το στοιχείο, χρησιμοποιούμε Stubs και Driversγια προσομοίωση της διεπαφής μεταξύ των στοιχείων του λογισμικού.
Ο έλεγχος ολοκλήρωσης γίνεται μετά από δοκιμή στοιχείων.
Στρατηγική δοκιμής συστατικών
Ανάλογα με το βάθος του επιπέδου δοκιμής, η δοκιμή συστατικών χωρίζεται σε δύο μέρη:
- Δοκιμή συστατικών σε μικρά (ctis)
- Δοκιμή συστατικών σε μεγάλη (CTIL)
Όταν η δοκιμή συστατικών γίνεται μεμονωμένα με άλλα συστατικά, καλείται ως δοκιμή εξαρτημάτων σε μικρά. Αυτό γίνεται χωρίς να εξετάζεται η ενσωμάτωση με άλλα στοιχεία.
Όταν η δοκιμή εξαρτημάτων γίνεται χωρίς απομόνωση με άλλα στοιχεία του λογισμικού, τότε ονομάζεται εκτεταμένη δοκιμή στοιχείων. Αυτό συμβαίνει όταν υπάρχει εξάρτηση από τη ροή λειτουργικότητας των στοιχείων και έτσι δεν μπορούμε να τα απομονώσουμε.
Εάν τα στοιχεία στα οποία έχουμε εξάρτηση δεν έχουν αναπτυχθεί ακόμη, τότε χρησιμοποιούμε εικονικά αντικείμενα αντί των πραγματικών στοιχείων. Αυτά τα εικονικά αντικείμενα είναι το στέλεχος (ονομάζεται λειτουργία) και το πρόγραμμα οδήγησης (λειτουργία κλήσης).
Stubs και προγράμματα οδήγησης
Πριν ξεκινήσω να ενημερώσω για τα Stubs και τα προγράμματα οδήγησης, πρέπει να ενημερώσω για το διαφορά μεταξύ δοκιμών συστατικών και δοκιμών ολοκλήρωσης. Ο λόγος είναι - Stubs και προγράμματα οδήγησης χρησιμοποιούνται επίσης στις δοκιμές ενοποίησης, έτσι αυτό μπορεί να οδηγήσει σε κάποια σύγχυση μεταξύ αυτών των δύο τεχνικών δοκιμών.
Η τεχνική δοκιμών ολοκλήρωσης είναι μια τεχνική όπου συνδυάζουμε 2 στοιχεία διαδοχικά και δοκιμάζουμε το ολοκληρωμένο σύστημα μαζί. Τα δεδομένα από ένα σύστημα διασχίζονται σε άλλο σύστημα και η ορθότητα των δεδομένων επικυρώνεται για το ολοκληρωμένο σύστημα.
Σε αντίθεση με τη δοκιμή μονάδας όπου το μεμονωμένο στοιχείο / ενότητα δοκιμάζεται διεξοδικά πριν από την ενσωμάτωσή του σε άλλα στοιχεία. Μπορούμε λοιπόν να πούμε ότι η δοκιμή στοιχείων πραγματοποιείται πριν από τη δοκιμή ενοποίησης.
Τόσο η ενσωμάτωση όσο και οι συνιστώσες χρήσεις Stubs και προγράμματα οδήγησης .
'Οδηγοί' είναι τα εικονικά προγράμματα που χρησιμοποιούνται για την κλήση των λειτουργιών της χαμηλότερης μονάδας σε περίπτωση που η λειτουργία κλήσης δεν υπάρχει.
«Στελέχη» μπορεί να αναφέρεται ως κωδικός ένα απόσπασμα που δέχεται τις εισόδους / αιτήματα από την κορυφαία ενότητα και επιστρέφει τα αποτελέσματα / απάντηση
Όπως εξηγήθηκε προηγουμένως, τα συστατικά δοκιμάζονται μεμονωμένα και ανεξάρτητα. Έτσι, μπορεί να υπάρχουν ορισμένα χαρακτηριστικά των εξαρτημάτων, ανάλογα με το άλλο στοιχείο που δεν έχει αναπτυχθεί αυτήν τη στιγμή. Επομένως, για να δοκιμάσουμε τα στοιχεία με αυτές τις 'ανεπτυγμένες' δυνατότητες, πρέπει να χρησιμοποιήσουμε ορισμένους διεγερτικούς παράγοντες που θα επεξεργαστούν τα δεδομένα και θα τα επιστρέφουν στα στοιχεία κλήσης.
Με αυτόν τον τρόπο διασφαλίζουμε ότι τα επιμέρους συστατικά ελέγχονται διεξοδικά.
Εδώ βλέπουμε ότι:
- C1, C2, C3, C4, C5, C6, C7, C8, C9 ————— είναι τα συστατικά
- Οι C1, C2 και C3 μαζί δημιουργούν την υπομονάδα 1
- Οι C4 & C5 δημιουργούν μαζί την υπομονάδα 2
- Οι C6, C7 & C8 δημιουργούν μαζί την υπομονάδα 3
- Μόνο το C9 κάνει την υπομονάδα 4
- Η υποενότητα 1 και η υπομονάδα 2 συνδυάζονται για να κάνουν την επιχειρηματική μονάδα 1
- Η Υπο Ενότητα 3 και η Υπο Ενότητα 4 συνδυάζονται για να κάνουν την Επιχειρηματική Ενότητα 2
- Business Unit 1 και Business Unit 2 συνδυάζονται για να κάνουν την εφαρμογή.
- Έτσι, η δοκιμή συνιστωσών, σε αυτήν την περίπτωση, θα ήταν να δοκιμάσετε τα μεμονωμένα στοιχεία που είναι C1 έως C9.
- ο Καθαρά Το βέλος μεταξύ της υπομονάδας 1 και της υπομονάδας 2 δείχνει το σημείο δοκιμής ενοποίησης.
- Ομοίως, το Καθαρά Το βέλος μεταξύ της υπομονάδας 3 και της υπομονάδας 4 δείχνει το σημείο δοκιμής ενοποίησης
- Το πράσινο βέλος μεταξύ Επιχειρηματικής Ενότητας 1 και Επιχειρηματικής Ενότητας 2 δείχνει το σημείο δοκιμής ενοποίησης
Ως εκ τούτου θα κάναμε:
- ΣΥΣΤΑΤΙΚΟ δοκιμή για C1 έως C9
- ΕΝΣΩΜΑΤΩΣΗ δοκιμή μεταξύ των υπομονάδων και των επιχειρηματικών μονάδων
- ΣΥΣΤΗΜΑ δοκιμή της Εφαρμογής στο σύνολό της
Ενα παράδειγμα
Μέχρι τώρα, πρέπει να έχουμε αποδείξει ότι η δοκιμή συνιστωσών είναι κάποιο είδος τεχνικής δοκιμής λευκού κουτιού . Λοιπόν, μπορεί να είναι σωστό. Αλλά αυτό δεν σημαίνει ότι αυτή η τεχνική δεν θα μπορούσε να χρησιμοποιηθεί στην τεχνική δοκιμής Black Box.
java add στο τέλος του πίνακα
Εξετάστε μια τεράστια εφαρμογή ιστού που ξεκινά με μια σελίδα σύνδεσης. Ως δοκιμαστής (αυτός και σε έναν ευέλικτο κόσμο) δεν μπορούσαμε να περιμένουμε μέχρι να αναπτυχθεί ολόκληρη η εφαρμογή και να είναι έτοιμη για δοκιμή. Για να αυξήσουμε το χρόνο μας στην αγορά, πρέπει να ξεκινήσουμε τις δοκιμές νωρίς. Έτσι, όταν βλέπουμε ότι η σελίδα σύνδεσης έχει αναπτυχθεί, πρέπει να επιμείνουμε ότι είναι διαθέσιμη για δοκιμή.
Μόλις διαθέτετε τη σελίδα σύνδεσης για δοκιμή, μπορείτε να εκτελέσετε όλες τις δοκιμαστικές σας περιπτώσεις (θετικές και αρνητικές) για να βεβαιωθείτε ότι η λειτουργικότητα της σελίδας σύνδεσης λειτουργεί όπως αναμένεται.
Τα πλεονεκτήματα της δοκιμής της σελίδας σύνδεσης σε αυτό το χρονικό σημείο θα ήταν:
ο καλύτερος μετατροπέας βίντεο για mac
- Το UI έχει δοκιμαστεί για χρηστικότητα (ορθογραφικά λάθη, λογότυπα, ευθυγράμμιση, μορφοποίηση κ.λπ.)
- Προσπαθήστε να χρησιμοποιήσετε αρνητικές τεχνικές δοκιμών όπως ο έλεγχος ταυτότητας και η εξουσιοδότηση. Υπάρχει τεράστια πιθανότητα εύρεσης ελαττωμάτων σε αυτές τις περιπτώσεις.
- Χρήση τεχνικών όπως SQL Injections θα εξασφαλίσει τον έλεγχο της παραβίασης της ασφάλειας σε πολύ πρώιμο στάδιο.
Τα ελαττώματα που θα καταγράφατε σε αυτό το στάδιο θα λειτουργούσαν ως «διδάγματα» για την ομάδα ανάπτυξης και αυτά θα εφαρμοστούν στην κωδικοποίηση της διαδοχικής σελίδας. Ως εκ τούτου, δοκιμάζοντας νωρίς - έχετε εξασφαλίσει καλύτερη ποιότητα των σελίδων που δεν έχουν ακόμη αναπτυχθεί.
Επειδή οι άλλες συνεχόμενες σελίδες δεν έχουν ακόμη αναπτυχθεί, ενδέχεται να χρειαστείτε stubs για να επικυρώσετε τη λειτουργικότητα της σελίδας σύνδεσης. Για παράδειγμα ,μπορεί να θέλετε μια απλή σελίδα που να δηλώνει 'επιτυχής καταγραφή', σε περίπτωση σωστών διαπιστευτηρίων και αναδυόμενου παραθύρου μηνύματος σφάλματος σε περίπτωση εσφαλμένων διαπιστευτηρίων.
Μπορείτε να διαβάσετε το προηγούμενο σεμινάριό μας στο Δοκιμή ολοκλήρωσης για να έχετε περισσότερες πληροφορίες σχετικά με το Stubs και τα προγράμματα οδήγησης.
Πώς να γράψετε δοκιμαστικά στοιχεία;
Οι περιπτώσεις δοκιμών για δοκιμές εξαρτημάτων προέρχονται από προϊόντα εργασίας, για παράδειγμα, σχεδιασμό λογισμικού ή μοντέλο δεδομένων. Κάθε συστατικό δοκιμάζεται μέσω μιας ακολουθίας δοκιμαστικών περιπτώσεων όπου κάθε δοκιμαστική θήκη καλύπτει έναν συγκεκριμένο συνδυασμό εισόδου / εξόδου, δηλαδή μερική λειτουργικότητα.
Ακολουθεί ένα δείγμα αποσπάσματος μιας δοκιμαστικής θήκης για το Module Login.
Μπορούμε να γράψουμε και άλλες δοκιμαστικές περιπτώσεις.
Δοκιμή συστατικών Vs Unit Testing
Η πρώτη διαφορά μεταξύ δοκιμής εξαρτημάτων και δοκιμών μονάδας είναι ότι η πρώτη πραγματοποιείται από δοκιμαστές ενώ η δεύτερη εκτελείται από προγραμματιστές ή επαγγελματίες SDET.
Η δοκιμή μονάδας διεξάγεται σε κοκκώδες επίπεδο. Από την άλλη πλευρά, η δοκιμή στοιχείων πραγματοποιείται σε επίπεδο εφαρμογής. Στη δοκιμή μονάδας, επαληθεύεται εάν ένα μεμονωμένο πρόγραμμα ή το κομμάτι του κώδικα εκτελείται σύμφωνα με το καθορισμένο. Κατά τη δοκιμή στοιχείων, κάθε αντικείμενο του λογισμικού ελέγχεται ξεχωριστά με ή χωρίς απομόνωση με άλλα στοιχεία / αντικείμενο του συστήματος.
Έτσι, η δοκιμή συστατικών μοιάζει πολύ με τη δοκιμή μονάδας, αλλά γίνεται σε υψηλότερο επίπεδο ολοκλήρωσης και στο πλαίσιο της εφαρμογής (όχι μόνο στο πλαίσιο αυτής της μονάδας / προγράμματος όπως στη δοκιμή μονάδας).
Δοκιμή συστατικών Vs Interface Vs Integration Vs Systems
Συστατικό , όπως εξήγησα, είναι η χαμηλότερη μονάδα μιας εφαρμογής που ελέγχεται ανεξάρτητα.
Ενα διεπαφή είναι το ενωτικό στρώμα των 2 συστατικών. Ο έλεγχος της πλατφόρμας ή της διεπαφής στην οποία αλληλεπιδρούν τα 2 συστατικά ονομάζεται Δοκιμή διεπαφής.
Τώρα, η δοκιμή της διεπαφής είναι λίγο διαφορετική. Αυτές οι διεπαφές είναι κυρίως API ή Web Services , οπότε η δοκιμή αυτών των διεπαφών δεν θα ήταν παρόμοια με την τεχνική Black Box, αλλά θα κάνατε κάποιες δοκιμές API ή δοκιμές υπηρεσίας Web χρησιμοποιώντας UI σαπουνιού ή οποιοδήποτε άλλο εργαλείο.
Μόλις ολοκληρωθεί η δοκιμή διασύνδεσης, έρχεται το Δοκιμή ολοκλήρωσης .
Κατά τη διάρκεια της δοκιμής ενοποίησης, συνδυάζουμε τα μεμονωμένα δοκιμασμένα συστατικά ένα προς ένα και το δοκιμάζουμε σταδιακά. Επικυρώνουμε κατά τη διάρκεια της Ενσωμάτωσης ότι τα μεμονωμένα στοιχεία όταν συνδυάζονται ένα προς ένα, συμπεριφέρονται όπως αναμένεται και τα δεδομένα δεν τροποποιούνται κατά τη ροή από 1 ενότητα σε άλλη ενότητα.
Μόλις όλα τα συστατικά ενσωματωθούν και δοκιμαστούν, εκτελούμε το Δοκιμή συστημάτων για να ελέγξετε ολόκληρη την εφαρμογή / σύστημα ως σύνολο. Αυτή η δοκιμή επικυρώνει τις επιχειρηματικές απαιτήσεις έναντι του εφαρμοζόμενου λογισμικού.
συμπέρασμα
Θα έλεγα ότι Δοκιμή μονάδας και οι δοκιμές συστατικών γίνονται δίπλα-δίπλα.
Σε αντίθεση με τη δοκιμή μονάδας που πραγματοποιείται από την ομάδα ανάπτυξης, η δοκιμή συνιστωσών / μονάδων γίνεται από την ομάδα δοκιμών. Συνιστάται πάντοτε να πραγματοποιείτε δοκιμές μέσω Component πριν ξεκινήσετε τη δοκιμή ενοποίησης.
Εάν η δοκιμή Component είναι σταθερή, θα διαπιστώσουμε λιγότερα ελαττώματα στον έλεγχο ολοκλήρωσης. Θα υπήρχαν προβλήματα, αλλά αυτά τα ζητήματα θα σχετίζονται με το περιβάλλον ολοκλήρωσης ή τις προκλήσεις διαμόρφωσης. Μπορείτε να διασφαλίσετε ότι η λειτουργικότητα των ενσωματωμένων στοιχείων λειτουργεί καλά.
Ελπίζω ότι αυτό το σεμινάριο ήταν χρήσιμο για την κατανόηση των δοκιμών Συστατικών, Ενσωμάτωσης και Συστήματος. Εάν εξακολουθείτε να έχετε απορίες, μη διστάσετε να μας ρωτήσετε στα σχόλια.
Συνιστώμενη ανάγνωση
- Τα καλύτερα εργαλεία δοκιμής λογισμικού 2021 (QA Test Automation Tools)
- Τι είναι ο έλεγχος ενοποίησης συστήματος (SIT): Μάθετε με παραδείγματα
- Testing Primer eBook Λήψη
- Τι είναι ο έλεγχος σύγκρισης (Μάθετε με παραδείγματα)
- Τι είναι ο Έλεγχος Ενσωμάτωσης (Tutorial with Integration Test παράδειγμα)
- Λειτουργική δοκιμή Vs Μη λειτουργική δοκιμή
- Οι διαφορές μεταξύ δοκιμών μονάδας, δοκιμής ολοκλήρωσης και δοκιμής λειτουργίας
- Τι είναι ο αυξητικός έλεγχος: Λεπτομερής επεξήγηση με παραδείγματα