Δοκιμή Λογισμικού

Τεστ άγχους για αρχάριους

30 Οκτωβρίου 2021

Το stress test είναι ένα από τα δοκιμή απόδοσης τύπους που ελέγχει τη σταθερότητα και την αξιοπιστία των εφαρμογών. Το stress test στοχεύει στη μέτρηση των δυνατοτήτων χειρισμού σφαλμάτων και της ευρωστίας των εφαρμογών υπό έντονες συνθήκες και διασφαλίζει ότι δεν συντρίβονται κάτω από δύσκολες καταστάσεις. Δοκιμάζει πέρα ​​από τα κανονικά σημεία λειτουργίας και αξιολογεί τον τρόπο λειτουργίας των εφαρμογών υπό ακραίες συνθήκες.

Το Stress Test ονομάζεται επίσης τεστ αντοχής. Στο πλαίσιο αυτού του τύπου δοκιμών, το Application Under Test (AUT) υπόκειται σε πίεση για σύντομο χρονικό διάστημα ώστε να γνωρίζουμε την αντοχή του. Η πιο κρίσιμη χρήση του stress test είναι ο καθορισμός του ορίου στο οποίο το σύστημα ή το λογισμικό ή το υλικό σπάει. Ελέγχει εάν το σύστημα επιδεικνύει αποτελεσματική και αποδοτική διαχείριση σφαλμάτων υπό ακραίες συνθήκες.

Πίνακας περιεχομένων

Διαδικασία Stress Testing

    Σχεδιάζοντας το τεστ άγχους:Συγκεντρώνετε τα δεδομένα του συστήματος, αναλύετε και ορίζετε τους στόχους του stress testΠροσαρμογή και βελτιστοποίηση: Αλλάζετε διαμορφώσεις, βελτιστοποιείτε το σύστημα, βελτιστοποιείτε τον κώδικα με το σχέδιο για να καλύψει το επιθυμητό σημείο αναφοράς . Δημιουργία σεναρίων απόδοσης:Δημιουργείτε τα σενάρια δοκιμών απόδοσης και δημιουργείτε τα δεδομένα δοκιμής για τα σενάρια πίεσης. Εκτέλεση σεναρίου: Εδώ εκτελείτε το άγχος δοκιμή απόδοσης σενάρια και αποθηκεύστε τα αποτελέσματα του άγχους. Ανάλυση αποτελεσμάτων:Αναλύετε τα αποτελέσματα των δοκιμών και εντοπίζετε τα σημεία συμφόρησης.

Ανάγκη για τεστ άγχους

  • Για να ελέγξετε εάν το σύστημα μπορεί να λειτουργήσει υπό μη κανονικές συνθήκες.
  • Εμφάνιση κατάλληλων μηνυμάτων σφάλματος όταν το σύστημα βρίσκεται υπό πίεση.
  • Καλό είναι να είστε προετοιμασμένοι για ακραίες συνθήκες εκτελώντας Stress Testing.
  • Υπό ακραίες συνθήκες αποτυχίας του συστήματος, θα μπορούσε να οδηγήσει σε τεράστια απώλεια εσόδων.

Πλεονεκτήματα

  • Παρέχει μια αξιολόγηση του πόσο μια εφαρμογή μπορεί να υπερβεί το φόρτο στόχο πριν προκαλέσει αστοχίες και σφάλματα εκτός από τη βραδύτητα.
  • Καθορίζει εάν τα δεδομένα μπορούν να καταστραφούν από υπερβολική πίεση στο σύστημα.
  • Επιτρέπει τη δημιουργία κανόνων παρακολούθησης εφαρμογών για προειδοποίηση για εισερχόμενες αποτυχίες.
  • Καθορίζει τις παρενέργειες του τυπικού υλικού ή των αποτυχιών εφαρμογών υποστήριξης.
  • Βοηθά στον προσδιορισμό του είδους των αποτυχιών που είναι πιο πολύτιμο να προγραμματιστεί.
  • Διασφαλίζει ότι οι αγχωτικές συνθήκες δεν αποκαλύπτουν ευπάθειες ασφαλείας

Μειονεκτήματα

  • Είναι πολύ ακριβό καθώς το περιβάλλον χρειάζεται να αναπαράγει το περιβάλλον παραγωγής
  • Γίνεται άβολο και επαχθές να αποφασίσουμε ποιος θα αυτοματοποιήσει και ποιος θα εκπαιδεύσει.
  • Θα απαιτούσε επιπλέον εκπαιδευμένους και ειδικευμένους ανθρώπους.

Στόχοι για τεστ άγχους

  • Ο σκοπός του stress test είναι να αξιολογήσει τις ενέργειες του συστήματος μετά από μια δυσλειτουργία. Μια συσκευή θα πρέπει να εμφανίζει ένα ικανοποιητικό μήνυμα σφάλματος για να είναι αποτελεσματικό το stress test, όταν βρίσκεται υπό ακραίες συνθήκες.
  • Συχνά, μεγάλα σύνολα δεδομένων που θα μπορούσαν να λανθασθούν κατά τη διάρκεια της δοκιμής ακραίων καταστάσεων μπορούν να χρησιμοποιηθούν για τη διεξαγωγή προσομοίωσης ακραίων καταστάσεων. Κατά την εκτέλεση δοκιμών ακραίων καταστάσεων, οι υπεύθυνοι δοκιμών δεν πρέπει να χάνουν αυτές τις πληροφορίες που σχετίζονται με την ασφάλεια.
  • Ο βασικός στόχος της δοκιμής ακραίων καταστάσεων είναι να διασφαλιστεί ότι μετά από αστοχία, η συσκευή επανέρχεται, κάτι που ονομάζεται δυνατότητα ανάκτησης.

Μετρικές δοκιμών άγχους

Μέτρηση Επεκτασιμότητας & Απόδοσης

    Σελίδες ανά δευτερόλεπτο:Μετρά πόσες σελίδες ζητούνται ανά δευτερόλεπτοΔιακίνηση:Βασική μέτρηση – Μέγεθος δεδομένων απόκρισης ανά δευτερόλεπτοΓύροι:Ο αριθμός των φορών που έχουν προγραμματιστεί σενάρια δοκιμών σε σχέση με τον αριθμό των φορών που έχει εκτελεστεί ένας πελάτης

Απάντηση Εφαρμογής

    Χρόνος χτυπήματος:Ο μέσος χρόνος ανάκτησης μιας εικόνας ή μιας σελίδας.Χρόνος για το πρώτο byte:Χρόνος που απαιτείται για την επιστροφή του πρώτου byte δεδομένων ή πληροφοριών.Χρόνος σελίδας:Χρόνος που απαιτείται για την ανάκτηση όλων των πληροφοριών σε μια σελίδα.

Αποτυχίες

    Αποτυχημένες συνδέσεις:Αριθμός αποτυχημένων συνδέσεων που απορρίφθηκαν από τον πελάτηΑποτυχημένοι γύροι:Κανένας από τους γύρους που αποτυγχάνειΞεχασμένες επιτυχίες:Αριθμός αποτυχημένων προσπαθειών που έγιναν από το σύστημα

Τύποι Stress Testing

    Κατανεμημένο τεστ άγχους

Σε αυτό το σύστημα πελάτη-διακομιστή, η δοκιμή γίνεται σε όλους τους πελάτες από τον διακομιστή. Ο ρόλος του stress server είναι να διανέμει τα stress tests σε όλους τους πελάτες stress και να παρακολουθεί την κατάστασή τους. Μόλις ο πελάτης έρθει σε επαφή με τον διακομιστή, ο διακομιστής προσθέτει το όνομα του πελάτη και ξεκινά την αποστολή δεδομένων για δοκιμή. Εν τω μεταξύ, οι μηχανές πελάτη στέλνουν ένα σήμα ή έναν καρδιακό παλμό ότι είναι συνδεδεμένο με τον διακομιστή. Εάν ο διακομιστής δεν λαμβάνει κλήσεις πελάτη, πρέπει να διερευνηθεί για εντοπισμό σφαλμάτων. Το νυχτερινό τρέξιμο είναι μία από τις καλύτερες επιλογές για να εκτελέσετε αυτά τα σενάρια stress test. Οι μεγάλες φάρμες διακομιστών χρειάζονται μια πιο αποτελεσματική και αποδοτική μέθοδο για τον προσδιορισμό του ποιοι υπολογιστές είχαν αστοχίες πίεσης που πρέπει να διερευνηθούν.

    Δοκιμή καταπόνησης εφαρμογής:

Επικεντρώνεται στην εύρεση ελαττωμάτων που σχετίζονται με το κλείδωμα δεδομένων και τον αποκλεισμό σημείων συμφόρησης απόδοσης και ζητημάτων δικτύου σε μια εφαρμογή.

    Συστημικό τεστ άγχους:

Είναι ένα ολοκληρωμένο stress test που μπορεί να δοκιμαστεί σε πολλαπλά συστήματα που εκτελούνται στον ίδιο διακομιστή. Χρησιμοποιείται για την εύρεση σφαλμάτων όπου τα δεδομένα μιας εφαρμογής αποκλείουν μια άλλη εφαρμογή.

    Συναλλακτικό Stress Test:

Σε αυτό, το stress test γίνεται σε μία ή περισσότερες συναλλαγές μεταξύ δύο ή περισσότερων εφαρμογών. Χρησιμοποιείται για τη βελτιστοποίηση και τη βελτιστοποίηση του συστήματος.

    Διερευνητικό τεστ άγχους:

Είναι ένας από τους τύπους προσομοίωσης ακραίων καταστάσεων που χρησιμοποιούνται για τον έλεγχο του συστήματος με ασυνήθιστες συνθήκες που είναι απροσδόκητα να συμβούν σε πραγματικό σενάριο. Χρησιμοποιείται για την εύρεση σφαλμάτων σε απρόβλεπτα σενάρια όπως π.χ

  1. Ένας μεγάλος αριθμός χρηστών συνδέθηκε ταυτόχρονα.
  2. Εάν ο σαρωτής ιών ξεκίνησε σε όλα τα μηχανήματα.
  3. Εάν η βάση δεδομένων είναι εκτός σύνδεσης όταν γίνεται πρόσβαση σε αυτήν από έναν ιστότοπο.
  4. Ένας μεγάλος όγκος δεδομένων εισάγεται στη βάση δεδομένων ταυτόχρονα.

Τα καλύτερα εργαλεία τεστ άγχους

NeoLoad

Το NeoLoad είναι μια αυτοματοποιημένη πλατφόρμα δοκιμών για οργανισμούς που δοκιμάζουν συνεχώς εφαρμογές. Η πλατφόρμα προσφέρει στους δοκιμαστές και τους προγραμματιστές αυτόματη σχεδίαση και συντήρηση δοκιμών, γρήγορη ανάλυση βασικών αιτιών, ενσωματωμένες ενσωματώσεις με ολόκληρο το SDLC εργαλειοθήκη. Σας επιτρέπει να επαναχρησιμοποιήσετε στοιχεία δοκιμών και αποτελέσματα από εργαλεία λειτουργικών δοκιμών. Υποστηρίζει την πλήρη γκάμα εφαρμογών web, κινητών και συσκευασμένων εφαρμογών, όπως π.χ ΧΥΜΟΣ ΔΕΝΤΡΟΥ , να προγραμματίζει συνεχώς, να διαχειρίζεται και να μοιράζεται πόρους και αποτελέσματα δοκιμών σε ολόκληρο τον οργανισμό για να διασφαλίζει την απόδοση της εφαρμογής.

Χαρακτηριστικά

  • Αυτοματοποιημένες δοκιμές API
  • Δυναμική Υποδομή
  • Κράτηση πόρων

Π ρύζι

Πρέπει να επισκεφτείτε το Ιστότοπος NeoLoad για την τιμή .

Apache JMeter

Το JMeter είναι ένα εργαλείο δοκιμών αυτοματισμού που εκτελεί δοκιμές φορτίου, λειτουργικές δοκιμές, δοκιμές παλινδρόμησης και διαφορετικές τεχνολογίες. Υποστηρίζει διάφορους τύπους εφαρμογών, πρωτοκόλλων και διακομιστών όπως SOAP, TCP, FTP. SOAP, LDAP MOM, σενάρια κελύφους, Πρωτόκολλα αλληλογραφίας, αντικείμενα Java, βάση δεδομένων.

φά eatures

  • Είναι λογισμικό ανοιχτού κώδικα.
  • Διαδραστικό και απλό GUI.
  • Είναι πολύ ελαστικό.
  • Τα τεστ αποθηκεύονται σε μορφή XML.
  • Είναι ανεξάρτητο από πλατφόρμα.
  • Το καλύτερο εργαλείο αυτοματισμού API.

Π ρύζι

Είναι δωρεάν για χρήση.

Μελιτζάνα

Το εργαλείο δοκιμής μελιτζάνας είναι ένα αυτοματοποιημένο εργαλείο δοκιμών και εντοπισμού σφαλμάτων εφαρμογών. Δοκιμάζει μια ενιαία πηγή αλήθειας για την εμπειρία του χρήστη. Οι λύσεις του Eggplant μπορούν να δοκιμάσουν περιπτώσεις σε οποιοδήποτε επίπεδο από τη βάση δεδομένων.

φά eatures

  • Είναι το καλύτερο εργαλείο δοκιμών αυτοματισμού GUI.
  • Η δοκιμή γίνεται από την πλευρά του χρήστη.
  • Είναι αξιόπιστο και οι δοκιμές γίνονται γρήγορα.
  • Χρησιμοποιεί ένα μόνο δοκιμαστικό σενάριο για διάφορα σενάρια.
  • Ενσωματωθείτε με δημοφιλή εργαλεία διαχείρισης δοκιμών.

Π ρύζι

Η άδεια κοστίζει περίπου 00—η δεύτερη ροή κοστίζει περίπου .700 και η τρίτη ροή περίπου 0.

Συχνές ερωτήσεις

Τι είναι το stress test;

Το stress test ελέγχει τη σταθερότητα και την αξιοπιστία των εφαρμογών. Το stress test στοχεύει στη μέτρηση των δυνατοτήτων χειρισμού σφαλμάτων και της ευρωστίας των εφαρμογών υπό έντονες συνθήκες και διασφαλίζει ότι δεν συντρίβονται κάτω από δύσκολες καταστάσεις. Δοκιμάζει πέρα ​​από τα κανονικά σημεία λειτουργίας και αξιολογεί τον τρόπο λειτουργίας των εφαρμογών υπό ακραίες συνθήκες. Το Stress Test ονομάζεται επίσης τεστ αντοχής.

Μπορεί το άγχος να αυτοματοποιηθεί;

Η διαδικασία θα πρέπει να είναι πλήρως αυτοματοποιημένη, ώστε να μπορείτε να εκτελείτε δοκιμές χωρίς επίβλεψη για μεγάλες περιόδους. Τουλάχιστον, το πλαίσιο προσομοίωσης ακραίων καταστάσεων πρέπει να καταγράφει ποιες ενότητες ελέγχου εκτελούνται και τυχόν αποτυχίες. Μπορείτε να δείτε πώς έγιναν οι δοκιμές μεταξύ τους.

Είναι ασφαλές το stress test CPU;

Αν δεν κάνετε τα τεστ αντοχής για ένα μήνα, μάλλον είστε καλά. Εάν η CPU σας φτάσει τα κρίσιμα όρια, ο υπολογιστής θα τερματιστεί πριν προκληθεί οποιαδήποτε βλάβη. Θα μπορούσατε να καταστρέψετε το υλικό σας σε πολύ σπάνιες περιπτώσεις εάν το αφήσετε να λειτουργήσει για παρατεταμένο χρονικό διάστημα.