volume testing tutorial
Επισκόπηση της δοκιμής έντασης:
Η παρακάτω εικόνα συσχετίζεται με τις εφαρμογές μας κατά κάποιον τρόπο ή με τον άλλο; Ναι, αυτό ακριβώς συμβαίνει όταν υπερφορτώνουμε τους διακομιστές, τις βάσεις δεδομένων, τις υπηρεσίες ιστού κ.λπ.
Όλοι μας πρέπει να γνωρίζουμε τις λειτουργικές και μη λειτουργικές δοκιμές, αλλά έχετε επίγνωση του γεγονότος ότι οι μη λειτουργικές δοκιμές είναι εξίσου σημαντικές με τις λειτουργικές δοκιμές; Μερικές φορές σε κυκλοφορίες μικρής διάρκειας, τείνουμε να αγνοούμε αυτήν τη μη λειτουργική δοκιμή που στην ιδανική περίπτωση δεν πρέπει.
Δεν πρέπει να μας πει αν ο κάτοχος του προϊόντος έχει δώσει αυτήν την απαίτηση ή όχι. Πρέπει να θεωρήσουμε αυτήν τη δοκιμή ως μέρος της πλήρους διαδικασίας δοκιμής μας ακόμη και για μικρές κυκλοφορίες.
Αυτό το σεμινάριο σχετικά με τον Έλεγχο έντασης δίνει μια πλήρη επισκόπηση της σημασίας, της ανάγκης, της σημασίας, της λίστας ελέγχου και ορισμένων από τα εργαλεία του, προκειμένου να μπορέσετε να το καταλάβετε με καλύτερο τρόπο.
Τι θα μάθετε:
- Τι είναι ο Έλεγχος έντασης;
- Πότε είναι επιτακτική αυτή η δοκιμή;
- Γιατί πρέπει να στοχεύσω στη δοκιμή όγκου;
- Ποια είναι η λίστα ελέγχου μου για αυτήν τη δοκιμή;
- Έλεγχος έντασης ήχου Φόρτωση δοκιμής
- Πώς να εκτελέσετε αυτόν τον έλεγχο;
- Εργαλεία δοκιμής όγκου
- συμπέρασμα
- Συνιστώμενη ανάγνωση
Τι είναι ο Έλεγχος έντασης;
Volume Testing είναι ένας τύπος μη λειτουργικών δοκιμών. Αυτός ο έλεγχος γίνεται για να ελέγξει τον όγκο δεδομένων που χειρίζεται η βάση δεδομένων. Ο έλεγχος όγκου που ονομάζεται επίσης δοκιμή πλημμύρας είναι μη λειτουργικός έλεγχος που γίνεται για τον έλεγχο του λογισμικού ή της εφαρμογής για την απόδοσή του έναντι τεράστιων δεδομένων της βάσης δεδομένων.
Η βάση δεδομένων εκτείνεται σε ένα κατώφλι με την προσθήκη μεγάλου όγκου δεδομένων σε αυτό και στη συνέχεια το σύστημα ελέγχεται για την απόκρισή του.
Αυτό ήταν το μέρος της θεωρίας, επιτρέψτε μου να σας εξηγήσω με μερικά πρακτικά παραδείγματα που θα σας βοηθήσουν να κατανοήσετε το 'πότε' μέρος της δοκιμής όγκου.
Πότε είναι επιτακτική αυτή η δοκιμή;
Στην ιδανική περίπτωση, κάθε λογισμικό ή μια εφαρμογή πρέπει να δοκιμάζεται για τον όγκο δεδομένων, αλλά σε ορισμένες περιπτώσεις όπου τα δεδομένα δεν θα είναι βαριά, τείνουμε να αποφεύγουμε αυτόν τον έλεγχο. Αλλά σε ορισμένες περιπτώσεις όπου τα δεδομένα αντιμετωπίζονται σε MB ή GB σε καθημερινή βάση, τότε σίγουρα, θα πρέπει να πραγματοποιηθεί δοκιμή έντασης.
Ακολουθούν μερικά παραδείγματα από τη δική μου εμπειρία 8 ετών που εξηγούν το μέρος «όταν»:
Παράδειγμα 1:
Ένα από τα εγχειρήματά μου ήταν ένα μεγάλο σύστημα που αποτελείται τόσο από την εφαρμογή ιστού όσο και από μια εφαρμογή για κινητά. Αλλά η ίδια η εφαρμογή ιστού είχε 3 ενότητες που χειρίζονται 3 διαφορετικές ομάδες.
Μερικές φορές, ακόμη και μαζί μας, η βάση δεδομένων καθυστέρησε όταν όλοι «μαζί» προσθέσαμε δεδομένα για τις δοκιμές μας. Ήταν ενοχλητικό και η δουλειά παρεμποδίστηκε λόγω του τεράστιου όγκου δεδομένων και για να διευκολύνει την εργασία που έπρεπε να καθαρίσουμε το DB αρκετά συχνά.
Τα δεδομένα που χειριζόταν το 'ζωντανό' σύστημα ήταν περίπου GB, επομένως σε σύγκριση με την εφαρμογή για κινητά, η εφαρμογή ιστού δοκιμάστηκε πολύ συχνά για τον όγκο των δεδομένων. Οι ομάδες QA της εφαρμογής ιστού είχαν τα δικά τους σενάρια αυτοματισμού που θα εκτελούσαν τη νύχτα και θα εκτελούσαν αυτόν τον έλεγχο.
Παράδειγμα 2:
Ένα άλλο παράδειγμα της επιχείρησής μου ήταν ένα οικοσύστημα που δεν είχε μόνο μια εφαρμογή ιστού, αλλά και μια εφαρμογή SharePoint και ακόμη και ένα πρόγραμμα εγκατάστασης. Όλα αυτά τα συστήματα επικοινωνούσαν στην ίδια βάση δεδομένων για μεταφορά δεδομένων. Τα δεδομένα που χειρίζεται αυτό το σύστημα ήταν επίσης πολύ τεράστια και εάν για οποιονδήποτε λόγο το DB καθυστερήσει ακόμη και ο εγκαταστάτης θα σταματούσε να λειτουργεί.
Ως εκ τούτου, ο έλεγχος έντασης έγινε σε τακτική βάση και η απόδοση της DB παρατηρήθηκε ελάχιστα για τυχόν ζητήματα.
Ομοίως, μπορούμε να πάρουμεΠαραδείγματααπό λίγες εφαρμογές που χρησιμοποιούμε καθημερινά για αγορές, κρατήσεις εισιτηρίων, χρηματοοικονομικές συναλλαγές κ.λπ. που ασχολούνται με βαριές συναλλαγές δεδομένων και ως εκ τούτου χρειάζονται δοκιμή όγκου.
Από την άλλη πλευρά, μια ιδανική δοκιμή έντασης μπορεί να μην είναι πάντα εφικτή καθώς έχει τους δικούς της περιορισμούς και προκλήσεις.
Λίγοι από τους περιορισμούς και τις προκλήσεις περιλαμβάνουν:
- Είναι δύσκολο να δημιουργηθεί ο ακριβής κατακερματισμός της μνήμης.
- Η δημιουργία δυναμικών κλειδιών είναι δύσκολη.
- Η δημιουργία ενός ιδανικού πραγματικού περιβάλλοντος, δηλαδή το αντίγραφο του ζωντανού διακομιστή μπορεί να είναι δύσκολο.
- Τα εργαλεία αυτοματισμού, το δίκτυο κ.λπ. επηρεάζουν επίσης τα αποτελέσματα των δοκιμών.
Τώρα, έχουμε καταλάβει πότε πρέπει να κάνουμε αυτόν τον τύπο δοκιμών. Ας καταλάβουμε επίσης 'Γιατί' πρέπει να κάνουμε αυτό το τεστ όπως στο, τον στόχο ή τον σκοπό της εκτέλεσης αυτής της δοκιμής.
Γιατί πρέπει να στοχεύσω στη δοκιμή όγκου;
Ο έλεγχος έντασης μπορεί να σας βοηθήσει να καταλάβετε πόσο κατάλληλο είναι το σύστημά σας για τον πραγματικό κόσμο και βοηθά επίσης να εξοικονομήσετε τα χρήματά σας τα οποία αργότερα θα δαπανηθούν για λόγους συντήρησης.
Ακολουθούν μερικοί πιθανοί λόγοι για την εκτέλεση αυτής της δοκιμής:
- Η πιο βασική ανάγκη είναι η ανάλυση της απόδοσης του συστήματός σας έναντι αυξημένων δεδομένων. Η δημιουργία τεράστιου όγκου δεδομένων θα σας βοηθήσει να κατανοήσετε την απόδοση του συστήματός σας όσον αφορά τον χρόνο απόκρισης, την απώλεια δεδομένων κ.λπ.
- Προσδιορίστε τα ζητήματα που θα προκύψουν με τεράστια δεδομένα και το κατώφλι.
- Πέρα από το βιώσιμο σημείο ή το κατώφλι, η συμπεριφορά του συστήματος, δηλαδή εάν το DB καταρρέει, δεν ανταποκρίνεται ή λήγει ο χρόνος.
- Εφαρμογή λύσεων για υπερφόρτωση DB και ακόμη και επαλήθευσή τους.
- Ανακαλύπτοντας το ακραίο σημείο του DB σας (το οποίο δεν μπορεί να διορθωθεί) πέρα από το οποίο το σύστημα θα αποτύχει και επομένως πρέπει να ληφθούν προφυλάξεις.
- Σε περίπτωση περισσότερων από ενός διακομιστών DB, να ανακαλύψετε τα προβλήματα με την επικοινωνία DB, δηλαδή τους πιο επιρρεπείς σε αποτυχία από αυτούς, κ.λπ.
Τώρα γνωρίζουμε τη σημασία και τον λόγο για την εκτέλεση αυτού του τεστ.
Ή Μια εμπειρία που θα ήθελα να μοιραστώ εδώ είναι ότι από την άποψη των εφαρμογών για κινητά, ενδέχεται να μην απαιτείται έλεγχος έντασης επειδή μόνο ένα άτομο χρησιμοποιεί την εφαρμογή κάθε φορά και οι εφαρμογές για κινητά έχουν σχεδιαστεί για να είναι απλές .
Επομένως, εκτός εάν έχετε μια πολύ περίπλοκη εφαρμογή με πολλή συμμετοχή δεδομένων, η δοκιμή έντασης μπορεί να παραλειφθεί.
Μόλις ξέρετε τι πρέπει να επαληθευτεί για το σύστημα ή την εφαρμογή σας, το επόμενο πράγμα που πρέπει να κάνετε είναι να δημιουργήσετε μια λίστα ελέγχου για να ορίσετε την εφαρμογή σας 'τι' πρέπει να δοκιμαστεί.
Ποια είναι η λίστα ελέγχου μου για αυτήν τη δοκιμή;
Πριν προχωρήσουμε σε κάποια παραδείγματα για τη δημιουργία μιας λίστας ελέγχου για την εφαρμογή ή το σύστημά σας, ας καταλάβουμε πρώτα μερικούς δείκτες που πρέπει να θυμάστε κατά τη δημιουργία μιας λίστας ελέγχου για δοκιμή έντασης ή την προσέγγιση πριν ξεκινήσετε τη δοκιμή.
Σημεία που πρέπει να θυμάστε:
- Ενημερώστε τους προγραμματιστές σχετικά με το σχέδιο δοκιμών σας, επειδή γνωρίζουν πολλά για το σύστημα και μπορούν να σας παρέχουν πληροφορίες και ακόμη και σημεία συμφόρησης.
- Κατανοήστε τη φυσική πτυχή όπως στις διαμορφώσεις διακομιστή, τη μνήμη RAM, τον επεξεργαστή κ.λπ. πριν από τη στρατηγική της δοκιμής.
- Κατανοήστε τις πολυπλοκότητες του DB, τις διαδικασίες, τα σενάρια DB κ.λπ. στον πιθανό βαθμό, ώστε να μπορείτε να περιγράψετε την πολυπλοκότητα του συστήματός σας συνολικά.
- Προετοιμάστε πληροφορική, π.χ. γραφήματα, δελτίο δεδομένων κ.λπ., εάν είναι δυνατόν για τον κανονικό όγκο δεδομένων και πόσο καλά είναι το σύστημα, αυτό θα σας βοηθήσει να βεβαιωθείτε ότι πριν τονίσετε το DB, η απόδοση είναι καλή για κανονική φόρτωση δεδομένων. Αυτό θα σας βοηθήσει επίσης να βεβαιωθείτε πριν προχωρήσετε στο άγχος, ότι δεν υπάρχουν προβλήματα που θα απαιτούν επιδιόρθωση για τη δοκιμή έντασης.
Ακολουθούν ορισμένα παραδείγματα που μπορείτε να προσθέσετε ή να χρησιμοποιήσετε στη λίστα ελέγχου σας:
- Ελέγξτε για την ορθότητα των μεθόδων αποθήκευσης δεδομένων.
- Ελέγξτε εάν το σύστημα διαθέτει τους απαραίτητους πόρους μνήμης ή όχι.
- Ελέγξτε εάν υπάρχει κίνδυνος όγκου δεδομένων μεγαλύτερου από ένα καθορισμένο όριο.
- Ελέγξτε και παρατηρήστε την απόκριση του συστήματος στον όγκο δεδομένων.
- Ελέγξτε εάν τα δεδομένα χάνονται κατά τη διάρκεια της δοκιμής έντασης.
- Ελέγξτε ότι εάν τα δεδομένα αντικατασταθούν, τότε γίνεται με προηγούμενες πληροφορίες.
- Προσδιορίστε τις περιοχές που εκτείνονται πέρα από το κανονικό εύρος, όπως πολλά χαρακτηριστικά (με δυνατότητα αναζήτησης), τεράστιος αριθμός. πινάκων αναζήτησης, πολλές αντιστοιχίσεις τοποθεσίας κ.λπ.
- Όπως αναφέρθηκε προηγουμένως, δημιουργήστε μια γραμμή βάσης πρώτα παίρνοντας αποτελέσματα για τον κανονικό όγκο και στη συνέχεια προχωρήστε με πίεση.
Προτού προχωρήσουμε στα άλλα παραδείγματα, τις δοκιμαστικές περιπτώσεις και τα εργαλεία, ας καταλάβουμε πρώτα πώς διαφέρει αυτός ο έλεγχος από τον έλεγχο φορτίου.
Έλεγχος έντασης ήχου Φόρτωση δοκιμής
Παρακάτω δίνονται μερικές από τις βασικές διαφορές μεταξύ Έλεγχος έντασης και φόρτωσης:
S.No. | Δοκιμή όγκου | Φόρτωση δοκιμής |
---|---|---|
1 | Ο έλεγχος έντασης γίνεται για την επαλήθευση της απόδοσης της βάσης δεδομένων έναντι μεγάλου όγκου δεδομένων στο DB. | Η δοκιμή φορτίου πραγματοποιείται αλλάζοντας τα φορτία χρήστη για τους πόρους και επαληθεύοντας την απόδοση των πόρων. |
δύο | Η κύρια εστίαση αυτής της δοκιμής είναι στα «δεδομένα». | Ο πρωταρχικός στόχος αυτής της δοκιμής είναι στους «χρήστες». |
3 | Η βάση δεδομένων τονίζεται στο μέγιστο όριο. | Ο διακομιστής τονίζεται στο μέγιστο όριο. |
4 | Ένα απλό παράδειγμα μπορεί να είναι η δημιουργία ενός τεράστιου μεγέθους αρχείου. | Ένα απλό παράδειγμα μπορεί να είναι η δημιουργία μεγάλου αριθμού αρχείων. |
Πώς να εκτελέσετε αυτόν τον έλεγχο;
Αυτός ο έλεγχος μπορεί να γίνει είτε με το χέρι είτε με χρήση οποιουδήποτε εργαλείου. Σε γενικές γραμμές, η χρήση εργαλείων θα εξοικονομήσει χρόνο και προσπάθειες αλλά σε περίπτωση δοκιμής έντασης, σύμφωνα με την εμπειρία μου Η χρήση εργαλείων μπορεί να σας δώσει πιο ακριβή αποτελέσματα σε σύγκριση με τη μη αυτόματη δοκιμή.
Πριν ξεκινήσετε την εκτέλεση της δοκιμαστικής σας υπόθεσης, βεβαιωθείτε ότι:
- Η ομάδα συμφώνησε στο σχέδιο δοκιμών για αυτές τις δοκιμές.
- Άλλες ομάδες του έργου σας είναι καλά ενημερωμένες για τις αλλαγές στη βάση δεδομένων και τον αντίκτυπό της στην εργασία τους.
- Τα testbeds έχουν οριστεί για τις καθορισμένες διαμορφώσεις.
- Η βασική γραμμή για τις δοκιμές προετοιμάζεται.
- Οι συγκεκριμένοι όγκοι δεδομένων για δοκιμή (σενάρια δεδομένων ή διαδικασίες κ.λπ.) είναι έτοιμοι. Μπορείτε να διαβάσετε σχετικά με τα εργαλεία δημιουργίας δεδομένων στη σελίδα δημιουργίας δεδομένων.
Ας δούμε μερικά δείγματα δοκιμαστικών περιπτώσεων που μπορείτε να χρησιμοποιήσετε κατά την εκτέλεση:
Επιβεβαιώστε αυτό για όλους τους επιλεγμένους τόμους δεδομένων για δοκιμή έντασης:
- Επαληθεύστε εάν η προσθήκη δεδομένων μπορεί να γίνει με επιτυχία και αν αντικατοπτρίζεται στην εφαρμογή ή στον ιστότοπο.
- Επαληθεύστε εάν η διαγραφή δεδομένων μπορεί να γίνει με επιτυχία και αν αντικατοπτρίζεται στην εφαρμογή ή στον ιστότοπο.
- Επαληθεύστε εάν η ενημέρωση των δεδομένων μπορεί να γίνει με επιτυχία και αν αντικατοπτρίζεται στην εφαρμογή ή στον ιστότοπο.
- Βεβαιωθείτε ότι δεν υπάρχει απώλεια δεδομένων και όλες οι πληροφορίες εμφανίζονται όπως αναμένεται στην εφαρμογή ή στον ιστότοπο.
- Βεβαιωθείτε ότι η εφαρμογή ή οι ιστοσελίδες δεν λήγουν λόγω υψηλού όγκου δεδομένων.
- Βεβαιωθείτε ότι τα σφάλματα διακοπής λειτουργίας δεν εμφανίζονται λόγω του μεγάλου όγκου δεδομένων.
- Βεβαιωθείτε ότι τα δεδομένα δεν αντικαθίστανται και εμφανίζονται οι κατάλληλες προειδοποιήσεις.
- Βεβαιωθείτε ότι άλλες λειτουργικές μονάδες του ιστότοπου ή της εφαρμογής σας δεν παρουσιάζουν σφάλματα ή λήγουν χρονικά όρια με υψηλό όγκο δεδομένων.
- Βεβαιωθείτε ότι ο χρόνος απόκρισης του DB βρίσκεται εντός του αποδεκτού εύρους.
Εργαλεία δοκιμής όγκου
Όπως αναφέρθηκε προηγουμένως, ο έλεγχος αυτοματισμού εξοικονομεί χρόνο και δίνει ακόμη και ακριβή αποτελέσματα σε σύγκριση με τις μη αυτόματες δοκιμές. Ένα άλλο πλεονέκτημα της χρήσης εργαλείων για τη δοκιμή έντασης είναι ότι μπορούμε να εκτελέσουμε τις δοκιμές τη νύχτα και με αυτόν τον τρόπο η εργασία των άλλων ομάδων ή των μελών της ομάδας δεν θα επηρεαστεί από τον όγκο δεδομένων του DB.
Μπορούμε να προγραμματίσουμε τις δοκιμές το πρωί και τα αποτελέσματα θα είναι έτοιμα.
Ακολουθεί μια λίστα με λίγα εργαλεία δοκιμής όγκου ανοιχτού κώδικα:
# 1) DbFit:
Αυτό είναι ένα εργαλείο ανοιχτού κώδικα που υποστηρίζει δοκιμαστική ανάπτυξη.
DbFit το πλαίσιο δοκιμών γράφεται στην κορυφή του Fitness, οι δοκιμές γράφονται χρησιμοποιώντας πίνακες και μπορούν να εκτελεστούν χρησιμοποιώντας οποιοδήποτε εργαλείο Java IDE ή CI.
# 2) HammerDb:
HammerDb είναι επίσης ένα εργαλείο ανοιχτού κώδικα που μπορεί να είναι αυτοματοποιημένο, πολλαπλών νημάτων και ακόμη και να επιτρέπει την εκτέλεση σεναρίων χρόνου εκτέλεσης. Μπορεί να λειτουργήσει με SQL, Oracle, MYSQL κ.λπ.
# 3) JdbcSlim:
JdbcSlim Οι εντολές μπορούν να ενσωματωθούν εύκολα στο Slim Fitness και υποστηρίζει όλες τις βάσεις δεδομένων που διαθέτουν πρόγραμμα οδήγησης JDBC. Η εστίαση είναι στη διατήρηση της διαμόρφωσης, των δεδομένων δοκιμής και των ερωτημάτων SQL ξεχωριστά.
# 4) NoSQLMap:
Αυτό είναι ένα εργαλείο Python ανοιχτού κώδικα που έχει σχεδιαστεί για να εισάγει αυτόματα επιθέσεις και να διαταράξει τις διαμορφώσεις DB για την ανάλυση της απειλής. Λειτουργεί μόνο για το MongoDB.
# 5) Ruby-PLSQL-spec:
Το PLSQL μπορεί να ελεγχθεί μονάδα χρησιμοποιώντας το Ruby καθώς το Oracle είναι διαθέσιμο ως εργαλείο ανοιχτού κώδικα. Αυτό βασικά χρησιμοποιεί δύο βιβλιοθήκες: Ruby-PLSQL και Rspec.
συμπέρασμα
Ο έλεγχος όγκου είναι μη λειτουργικός έλεγχος που γίνεται για την ανάλυση της απόδοσης της βάσης δεδομένων. Μπορεί να γίνει χειροκίνητα καθώς και με τη βοήθεια ορισμένων εργαλείων.
Εάν είστε QA που είναι νέος σε αυτήν τη δοκιμή, θα πρότεινα να παίξετε με το εργαλείο ή να εκτελέσετε πρώτα κάποιες δοκιμαστικές περιπτώσεις. Αυτό θα σας βοηθήσει να κατανοήσετε την έννοια της δοκιμής έντασης πριν ξεκινήσετε τη δοκιμή.
φροντιστήριο microsoft dynamics ax 2012 για αρχάριους
Αυτή η δοκιμή είναι αρκετά δύσκολη και έχει τις δικές της προκλήσεις, επομένως είναι πολύ σημαντικό να έχουμε πλήρη γνώση της έννοιας, της δοκιμαστικής δημιουργίας και της γλώσσας DB πριν την εκτελέσετε.
Ελπίζω ότι αυτό το σεμινάριο θα είχε αυξήσει τον όγκο των γνώσεών σας σε αυτό το θέμα :)
Συνιστώμενη ανάγνωση
- Τα καλύτερα εργαλεία δοκιμής λογισμικού 2021 (QA Test Automation Tools)
- Εκμάθηση Pairwise Test ή All-Pairs Testing με εργαλεία και παραδείγματα
- Λειτουργική δοκιμή εναντίον μη λειτουργική δοκιμή
- Εκμάθηση δοκιμών διαμόρφωσης με παραδείγματα
- Testing Primer eBook Λήψη
- Εγχειρίδιο καταστροφικών δοκιμών και μη καταστροφικών δοκιμών
- 11 καλύτερα εργαλεία αυτοματισμού για τη δοκιμή εφαρμογών Android (Εργαλεία δοκιμών εφαρμογών Android)
- Καλύτερα εργαλεία δοκιμών IVR: CYARA και HAMMER Test Tutorial