destructive testing
Διαφορά μεταξύ καταστρεπτικών δοκιμών και μη καταστροφικών δοκιμών με τους τύπους και τις μεθόδους του:
Σε αυτό το άρθρο, θα συζητήσουμε λεπτομέρειες σχετικά με καταστροφικές δοκιμές και μη καταστροφικές δοκιμές λογισμικού.
Θα μάθουμε γι 'αυτούς έναν προς έναν και θα δούμε επίσης τις διαφορές μεταξύ αυτών των δύο τύπων δοκιμών στο τέλος του άρθρου.
Τι θα μάθετε:
- Τι είναι ο καταστρεπτικός έλεγχος και ποια είναι τα οφέλη του;
- Τι είναι η μη καταστρεπτική δοκιμή και ποια είναι τα οφέλη της;
- Διαφορά μεταξύ καταστρεπτικών και μη καταστρεπτικών δοκιμών
Τι είναι ο καταστρεπτικός έλεγχος και ποια είναι τα οφέλη του;
Το Destructive Software Testing (DST) είναι ένα είδος δοκιμής λογισμικού που προσπαθεί να προκαλέσει την αποτυχία ενός μέρους της εφαρμογής λογισμικού με ανεξέλεγκτο τρόπο, να ελέγξει την ανθεκτικότητά του και να εντοπίσει το σημείο της αποτυχίας.
Σε αντίθεση με άλλες συμβατικές μεθόδους ελέγχου λογισμικού τύπου που ελέγχουν τη λειτουργικότητα του λογισμικού, αυτή η μέθοδος ελέγχει την απρόβλεπτη συμπεριφορά των χρηστών στο λογισμικό. Έτσι, μας επιτρέπει να αποκαλύπτουμε ελαττώματα λογισμικού που γενικά δεν αντιμετωπίζονται από τους μέσους χρήστες.
Λάβετε υπόψη ότι ο καταστροφικός έλεγχος λογισμικού (DST) είναι μια εναλλακτική προσέγγιση σε δοκιμές λογισμικού συμβατικού τύπου (CST), αλλά όχι η αντικατάστασή του. Είναι αποτελεσματικό να εκτελέσετε DST εκτός από CST.
Οι καταστροφικές δοκιμές πραγματοποιούνται υπό τις πιο αυστηρές συνθήκες λειτουργίας και συνεχίζεται μέχρι να διακοπεί η εφαρμογή. Η βασική ιδέα αυτής της δοκιμής δεν είναι μόνο να αποκαλυφθούν οι αδυναμίες του σχεδιασμού, εάν υπάρχουν, οι οποίες πιθανώς δεν θα αποκαλυφθούν υπό κανονικές συνθήκες εργασίας, αλλά και να ανακαλύψουν τη διάρκεια ζωής του προϊόντος λογισμικού.
Αυτός ο τύπος δοκιμών μοιράζεται ομοιότητες με το Monkey Testing, το Ad hoc Test και το Exploratory Testing.
Οφέλη του καταστρεπτικού ελέγχου λογισμικού
η κυκλοφορία ασύρματου δικτύου μπορεί να καταγραφεί με sniffers
- Βοηθά στη μέτρηση της ευρωστίας, της ανάκτησης και της διάρκειας ζωής της εφαρμογής.
- Αποκαλύπτει τα σημεία αποτυχίας σε περίπτωση ακατάλληλης ή κατάχρησης του λογισμικού.
- Ορίζει το σωστό πλαίσιο για τον υπεύθυνο δοκιμών καθώς αγνοεί τις προκαταλήψεις των ιστοριών χρηστών κατά τη δοκιμή.
- Μας δίνει τη δυνατότητα να αποκαλύψουμε ελαττώματα λογισμικού που γενικά δεν αντιμετωπίζονται από τους μέσους χρήστες.
- Αυτός ο τύπος δοκιμών είναι μοναδικός στην ανακάλυψη ελαττωμάτων στην εφαρμογή που όταν αντιμετωπιστεί θα προωθήσει την κατάταξη του λογισμικού σε κατάσταση απόδειξης για αρχάριους.
Βήματα για την εκτέλεση αυτού του ελέγχου
- Στην αρχή του καταστροφικού κύκλου δοκιμών λογισμικού, ο πελάτης στέλνει αντίγραφο εφαρμογής ή διαπιστευτήρια πρόσβασης και απαιτήσεις χρήστη.
- Στη συνέχεια, ο πελάτης παρουσιάζει τις απαιτήσεις και επιδεικνύει την εφαρμογή σε έναν αναλυτή QA.
- Στη συνέχεια, ο αναλυτής QA καθορίζει τη λειτουργία των ορίων εντός της εφαρμογής και δημιουργεί τα όρια χρηστικότητας της εφαρμογής εντός των ορίων.
- Τώρα, ο ελεγκτής QA θα δοκιμάσει τυχαία την εφαρμογή εντός αυτών των ορίων, χρησιμοποιώντας τις στοχαστικές τεχνικές. Καταγράφονται οι ροές εργασίας και τα ελαττώματα της δοκιμής QA.
- Τέλος, ο κατάλογος ελαττωμάτων κοινοποιείται στον πελάτη.
- Εάν υπάρχει ανάγκη, ο καταστροφικός κύκλος δοκιμών μπορεί να επαναληφθεί με βάση τις απαιτήσεις του πελάτη.
Για αυτήν τη δοκιμή, είναι καλό να γνωρίζουμε τις αρχικές απαιτήσεις του λογισμικού. Αυτό βοηθά στην εμφάνιση μιας καλής στρατηγικής δοκιμών.
Τι επαληθεύετε στο καταστρεπτικό τεστ;
- Ακατάλληλη και σωστή συμπεριφορά της εφαρμογής λογισμικού.
- Έγκυρα και μη έγκυρα δεδομένα εισόδου.
- Ακατάλληλη χρήση της εφαρμογής λογισμικού.
Καταστροφικές μέθοδοι και στρατηγικές δοκιμής λογισμικού
Υπάρχουν διάφοροι τρόποι με τους οποίους μπορούν να πραγματοποιηθούν καταστροφικές δοκιμές:
1) Μέθοδος ανάλυσης σημείου αποτυχίας:
Σε αυτή τη μέθοδο, η εφαρμογή εξετάζεται και εξετάζεται για πρόσβαση σε κάθε διαδρομή και γωνία αυτής. Είναι καθορισμένο τι μπορεί να αποτύχει σε διάφορα σημεία. Για αυτήν τη μέθοδο, μπορείτε να λάβετε βοήθεια από επιχειρηματικούς αναλυτές για να δείτε μια αναλυτική περιγραφή της εφαρμογής.
2) Αξιολόγηση από ομοτίμους:
Ελέγξτε την εφαρμογή από έναν συνάδελφο ελεγκτή που δεν είναι εξοικειωμένος με το λογισμικό. Αυτό θα σας βοηθήσει να βρείτε μερικά κρυμμένα σημεία αποτυχίας που δεν ήταν ορατά σε εσάς ως εξεταστής.
3) Ελέγξτε τις δοκιμαστικές περιπτώσεις από την επιχείρηση:
κορυφαίες ερωτήσεις συνέντευξης c ++
Οι τελικοί χρήστες και άλλοι ενδιαφερόμενοι μπορούν μερικές φορές να σκεφτούν έγκυρα σενάρια δοκιμών που μπορεί να έχει χάσει ένας δοκιμαστής. Επομένως, η εξέταση των δοκιμαστικών περιπτώσεων από την επιχείρηση μπορεί να αυξήσει τη δοκιμαστική σας κάλυψη.
4) Διερευνητικές δοκιμές:
Πραγματοποιήστε διερευνητικές δοκιμές με τη βοήθεια φύλλων εκτέλεσης. Θα σας βοηθήσει να μάθετε τι δοκιμάζεται, να επαναλάβετε τις δοκιμές και να ελέγξετε την κάλυψη των δοκιμών.
5) Τροφοδοτήστε το σύστημα με ακατάλληλα δεδομένα:
Μπορείτε να παρέχετε μη έγκυρη εισαγωγή στην εφαρμογή. Αυτό μπορεί να περιλαμβάνει κατεστραμμένα δεδομένα, λάθος ακολουθία βημάτων στη διεπαφή χρήστη κ.λπ.
6) Χρησιμοποιήστε άλλες πηγές:
Μπορείτε επίσης να χρησιμοποιήσετε άλλες πηγές ή τρόπους για να σπάσετε το σύστημα και να αναλύσετε διαφορετικά σενάρια. Το καλό είναι ότι η ιστορία του χρήστη για καταστροφικές δοκιμές λογισμικού δεν απαιτεί απαραιτήτως «απαιτήσεις» και «προδιαγραφές», οπότε μπορείτε να δοκιμάσετε οποιονδήποτε κατάλληλο τρόπο για να πραγματοποιήσετε αυτήν τη δοκιμή.
Καταστροφικές τεχνικές δοκιμών
Καταστροφικές δοκιμές λογισμικού μπορούν να διεξαχθούν με διάφορες τεχνικές όπως:
- Δοκιμή αποδοχής
- Δοκιμή βρόχου
- Δοκιμή παλινδρόμησης
- Διαχωρισμός ισοδυναμίας
- Δοκιμή οριακής τιμής
- Δοκιμή διεπαφών
- Δοκιμή Alpha / Beta
- Δοκιμή συστήματος
- Δοκιμή από κάτω προς τα κάτω
- Δοκιμή μαύρου κουτιού
Λίγες χρήσιμες συμβουλές για καταστροφικές δοκιμές λογισμικού
- Κερδίστε όσο το δυνατόν περισσότερες γνώσεις για το προϊόν. Βάλτε τον εαυτό σας στα παπούτσια του πελάτη και μετά σκεφτείτε το προϊόν από τη σκοπιά του.
- Διαγράψτε όλες τις προκατειλημμένες πληροφορίες από την ιστορία του χρήστη. Ξεχάστε την περιγραφή της ιστορίας χρήστη και τα κριτήρια αποδοχής και προσπαθήστε να σπάσετε την εφαρμογή σαν τρελός πελάτης.
- Αναζητήστε τις διαδρομές εξαίρεσης, όχι τις ευτυχείς διαδρομές. Λάβετε υπόψη ότι αγνοώντας τα κριτήρια αποδοχής, δεν θα γνωρίζετε την αναμενόμενη ή κανονική ροή εργασίας.
- Μην περιμένετε θετική απάντηση από την αίτησή σας. Τι γίνεται αν κάτι αποτύχει; Προσπαθήστε να προσομοιώσετε και να καταστρέψετε ό, τι μπορείτε.
- Περιορίστε τις συνθήκες του δικτύου σας σε μια πιο ρεαλιστική ρύθμιση, επειδή όλοι οι πραγματικοί χρήστες δεν θα έχουν κορυφαίες μηχανές και συνθήκες δικτύου.
Τι είναι η μη καταστρεπτική δοκιμή και ποια είναι τα οφέλη της;
Η μη καταστρεπτική δοκιμή (NDT) περιγράφεται ως τεχνική αξιολόγησης λογισμικού που συνεπάγεται σωστή αλληλεπίδραση με λογισμικό. Σε αντίθεση με τις καταστροφικές δοκιμές λογισμικού όπου αναζητούμε μονοπάτια εξαίρεσης, σε μη καταστροφικές δοκιμές, αναζητούμε χαρούμενα ή χρυσά μονοπάτια. Το NDT είναι επίσης γνωστό ως θετικό τεστ.
Για παράδειγμα, εάν υπάρχει ένα πλαίσιο εισαγωγής που δέχεται έναν αριθμό εντός 1-999, τότε μια θετική δοκιμαστική περίπτωση θα ήταν να εισαγάγετε έναν αριθμό εντός αυτού του εύρους και να επαληθεύσετε τη λειτουργικότητα του πλαισίου εισαγωγής.
Στο NDT, έχουμε μια καλά καθορισμένη δοκιμαστική θήκη χρησιμοποιώντας μια γνωστή απαίτηση, η οποία εκτελεί χωρίς λάθος ή εξαιρέσεις και παράγει την επιθυμητή έξοδο. Δίνει τα αναμενόμενα αποτελέσματα και επαληθεύει ότι το λογισμικό λειτουργεί όπως αναμενόταν.
Οφέλη μη καταστροφικού ελέγχου λογισμικού
- Η βελτιωμένη ποιότητα λογισμικού και τα προβλήματα επιδιορθώνονται στην κύρια ροή της εφαρμογής.
- Χρήσιμο στην απόδειξη ότι η εφαρμογή λογισμικού λειτουργεί σύμφωνα με τις απαιτούμενες προδιαγραφές.
- Επαληθεύει ότι ικανοποιούνται οι προσδοκίες των πελατών.
- Διασφαλίζει ότι πληρούνται οι απαιτήσεις απόδοσης.
- Εξοικονομεί χρόνο και χρήμα στην αξιολόγηση των προϊόντων και στην αντιμετώπιση προβλημάτων.
Πότε να εκτελέσετε αυτόν τον έλεγχο
- Θα πρέπει να είναι η πρώτη μορφή δοκιμής και πρέπει να γίνει στο αρχικό στάδιο του SDLC, επειδή το ευτυχισμένο μονοπάτι είναι η κύρια ροή της εφαρμογής και εάν δεν λειτουργεί καλά, το υπόλοιπο της δοκιμής αποκλείεται.
- Μπορεί να γίνει γρήγορα και εύκολα όταν δεν έχουμε αρκετό χρόνο και προϋπολογισμό για δοκιμές. Αυτό εξασφαλίζει τουλάχιστον ότι πληρούνται οι απαιτήσεις λογισμικού και τα κριτήρια αποδοχής.
Στρατηγική για μη καταστροφικές δοκιμές λογισμικού
- Η θετική δοκιμαστική προσέγγιση πρέπει να υιοθετηθεί για τη διεξαγωγή της μη καταστροφικής δοκιμής.
- Κατά τη διάρκεια της δοκιμής, ο υπεύθυνος δοκιμών θα πρέπει να έχει κατά νου ότι ο στόχος της μη καταστροφικής δοκιμής είναι να επαληθεύσει ότι η εφαρμογή θα λειτουργήσει καλά για την παροχή έγκυρων δεδομένων εισόδου. Έτσι, ο στόχος είναι να επαληθευτεί η συμπεριφορά της εφαρμογής για το θετικό σύνολο δεδομένων.
- Η βέλτιστη πρακτική είναι να ελέγξετε αν το σύστημα κάνει αυτό που σκοπεύει να κάνει.
Διαφορά μεταξύ καταστρεπτικών και μη καταστρεπτικών δοκιμών
Καταστροφικές δοκιμές | Μη καταστρεπτική δοκιμή |
---|---|
Επικεντρώνεται στις αδυναμίες στο σχεδιασμό αλλά όχι στη λειτουργικότητα. | Επικεντρώνεται στις αδυναμίες στη λειτουργικότητα αλλά όχι στο σχεδιασμό. |
Δεν χρειάζεται απαραίτητα επιχειρηματικές απαιτήσεις. Οι καταστροφικές δοκιμές γίνονται χωρίς να εξοικειωθούν με τις προκαθορισμένες απαιτήσεις. | Ο έλεγχος γίνεται για να επαληθευτεί η λειτουργικότητα έναντι των επιχειρηματικών απαιτήσεων και των κριτηρίων αποδοχής. |
Η πρόθεση είναι να διακόψετε το λογισμικό παρέχοντας ασυνήθιστες εισόδους για τον εντοπισμό σημείων βλαβών. | Η πρόθεση είναι να αλληλεπιδράσετε σωστά με το λογισμικό για να επαληθεύσετε τα θετικά αποτελέσματα. |
συμπέρασμα
Σε καταστροφικές δοκιμές, η εφαρμογή είναι σκόπιμα να συντρίψει για να εξετάσει την ανθεκτικότητα της εφαρμογής. Ανιχνεύει τα σημεία αστοχίας του λογισμικού που ενδέχεται να προκύψουν λόγω ακατάλληλου χειρισμού της εφαρμογής από τον πελάτη.
Ανιχνεύει εκείνα τα αδύναμα σημεία που δεν μπορούν να εντοπιστούν χρησιμοποιώντας συμβατικό έλεγχο λογισμικού. Για καλύτερη κάλυψη δοκιμών, προτιμάται η διεξαγωγή καταστροφικών δοκιμών λογισμικού μαζί με συμβατικές δοκιμές λογισμικού.
Οι μη καταστροφικές δοκιμές γίνονται με τη θετική δοκιμή ή την ευχάριστη δοκιμή προσέγγισης για να επαληθευτεί ότι η λειτουργικότητα του λογισμικού πληροί τις απαιτήσεις των πελατών. Περιλαμβάνει σωστή αλληλεπίδραση με το λογισμικό.
Συνιστώμενη ανάγνωση
- Τα καλύτερα εργαλεία δοκιμής λογισμικού 2021 (QA Test Automation Tools)
- Δοκιμή λογισμικού QA Assistant Job
- Μάθημα δοκιμών λογισμικού: Σε ποιο Ινστιτούτο δοκιμών λογισμικού πρέπει να εγγραφώ;
- Επιλέγοντας Δοκιμή λογισμικού ως καριέρα σας
- Δοκιμή λογισμικού Τεχνικό περιεχόμενο Συγγραφέας Freelancer Job
- Testing Primer eBook Λήψη
- Μερικές ενδιαφέρουσες ερωτήσεις συνέντευξης δοκιμής λογισμικού
- Σχόλια και σχόλια μαθήματος δοκιμών λογισμικού