gatling tutorial getting started with gatling load testing
Αυτό το εκπαιδευτικό βίντεο Gatling παρέχει μια ολοκληρωμένη ανασκόπηση του Gatling, συμπεριλαμβανομένων των δυνατοτήτων, των βημάτων εγκατάστασης και των παραδειγμάτων χρήσης του Gatling Simulation Recorder:
Το Gatling είναι ένα πλαίσιο δοκιμών ανοιχτού κώδικα που βασίζεται στη Scala. Κερδίζει πολλή δημοτικότητα αυτές τις μέρες με περισσότερες από 3 εκατομμύρια λήψεις τα τελευταία 3 χρόνια.
Είναι διαθέσιμο ως ανοιχτού κώδικα καθώς και ως εταιρική παραλλαγή που ονομάζεται Γραμμή πρώτης γραμμής με περισσότερες ενσωματώσεις και υποστήριξη από την ομάδα του Gatling. Ωστόσο, όλες οι πρακτικές περιπτώσεις χρήσης μπορούν να χρησιμοποιηθούν με τη χρήση της έκδοσης κοινότητας Gatling που είναι δωρεάν και ανοιχτού κώδικα.
Τι θα μάθετε:
Εκπαιδευτικό βίντεο Gatling
Ας δούμε τα βήματα που απαιτούνται για να ξεκινήσετε με το Gatling. Θα καλύψουμε επίσης μερικά από τα σημαντικά χαρακτηριστικά του Gatling ως μέρος αυτού του σεμιναρίου.
Εδώ είναι ένα βίντεο φροντιστήριο για το Gatling Εισαγωγή:
Εγκατάσταση
Το Gatling μπορεί να εγκατασταθεί με 2 διαφορετικούς τρόπους. Αυτό μπορεί να εξηγηθεί ως εξής:
# 1) Χρησιμοποιώντας το Gatling ως αυτόνομο εργαλείο, μπορείτε απλά να εγκαταστήσετε το πρόγραμμα εγκατάστασης / εφαρμογή, χρησιμοποιώντας το επίσημο Gatling δικτυακός τόπος και ακολουθήστε τις οδηγίες εγκατάστασης.
Λάβετε υπόψη ότι ο εγκατεστημένος φάκελος zip περιέχει τόσο κελύφη όσο και batch αρχεία που καθιστούν το Gatling κατάλληλο για χρήση σε διαφορετικά λειτουργικά συστήματα όπως - Windows, MacOS, Linux / Unix κ.λπ.
Το πρόγραμμα εγκατάστασης δεν είναι παρά μια συσκευή εγγραφής σεναρίων Gatling που βασίζεται σε Java, η οποία καταγράφει τις ενέργειες των χρηστών μέσω του προγράμματος περιήγησης στο εργαλείο και οι οποίες στη συνέχεια θα μπορούσαν να μετατραπούν σε σενάριο ή σενάριο που πρέπει να φορτωθεί και να δοκιμαστεί. Θα το δούμε λεπτομερώς στις επόμενες ενότητες.
#δύο) Ένας άλλος τρόπος για να εγκαταστήσετε / χρησιμοποιήσετε το Gatling είναι να το χρησιμοποιήσετε ως πακέτο μέσω Maven / Gradle ή μέσω εργαλείων κατασκευής Scala.
Ένα σημαντικό σημείο που πρέπει να σημειωθεί εδώ είναι ότι τα σενάρια Gatling είναι όλα βασισμένα σε Scala, επομένως η δημιουργία ενός έργου με βάση το Scala θα μπορούσε να χρησιμοποιήσει τη βιβλιοθήκη Gatling που μπορεί να εισαχθεί από οποιαδήποτε εργαλεία κατασκευής όπως το Maven / Gradle ή το SBT.
Χαρακτηριστικά του Gatling
Αυτά είναι τα εξής:
# 1) Ασύγχρονη αρχιτεκτονική και ελαφριά θέματα
Η Gatling έχει προηγμένη αρχιτεκτονική βασισμένη στο κιτ εργαλείων Akka και είναι πλήρως ασύγχρονη. Αυτό του δίνει το πλεονέκτημα σε σύγκριση με άλλα εργαλεία δοκιμής απόδοσης όπως το JMeter όπου κάθε νήμα αντιστοιχεί σε έναν μόνο χρήστη.
Εδώ, ένα μόνο νήμα μπορεί να προσομοιώσει πολλούς χρήστες καθώς διαθέτει αρχιτεκτονική ανταλλαγής μηνυμάτων μέσω του μοντέλου Actor.
Με λίγα λόγια, μια δοκιμή Gatling μπορεί να χειριστεί έναν αριθμό ταυτόχρονων χρηστών ανά μηχανή σε σύγκριση με άλλα εργαλεία όπως το Jmeter και ως εκ τούτου έχει ως αποτέλεσμα σημαντική εξοικονόμηση CPU και RAM.
Συνιστώμενη ανάγνωση => Μοντέλο ηθοποιού και ασύγχρονη αρχιτεκτονική του Gatling
# 2) Η συγκεκριμένη γλώσσα τομέα κάνει τις δοκιμές αναγνώσιμες
Τα σενάρια Gatling είναι γραμμένα στη Scala και έχουν ένα φιλικό DSL που καθιστά τα σενάρια πολύ ευανάγνωστα και λιγότερο επιρρεπή σε σφάλματα. Για περισσότερες λεπτομέρειες σχετικά με το Gatling DSL, ανατρέξτε εδώ .
# 3) Πρωτόκολλο Agnostic Support
Το Gatling υποστηρίζει μια ευρεία γκάμα πρωτοκόλλων όπως HTTP, HTTPS και πρίζες Web. Διαθέτει επίσης επεκτάσεις για τη δοκιμή φόρτωσης ερωτημάτων / σεναρίων SQL.
# 4) Αναφορά και ισχυρισμοί
Η Gatling παρέχει υποστήριξη για τη δημιουργία λεπτομερών αναφορών HTML για τα σενάρια που εκτελούνται και έχει επίσης δυνατότητες να εφαρμόζει ισχυρισμούς για τα μεμονωμένα αιτήματα σε σενάρια - Για παράδειγμα, Χρόνοι απόκρισης, επικύρωση περιεχομένου JSON κ.λπ.
# 5) Φιλική συσκευή εγγραφής δοκιμής με βάση το GUI
Το Gatling διαθέτει ένα εύχρηστο γραφικό καταγραφικό δοκιμής που μπορεί να δημιουργήσει σενάριο προσομοίωσης καταγράφοντας τη δραστηριότητα του χρήστη ή τις ενέργειες των χρηστών σε ένα πρόγραμμα περιήγησης ιστού. Τα σενάρια που δημιουργούνται είναι σενάρια βασισμένα σε Scala που θα μπορούσαν να εκτελεστούν σε μελλοντικό χρόνο και μπορούν να τροποποιηθούν σύμφωνα με τις απαιτήσεις.
Εφαρμογή υπό δοκιμή και καταγραφή σεναρίου δείγματος
Για τη δημιουργία προσομοίωσης δειγμάτων, θα χρησιμοποιήσουμε Η επίσημη παρεχόμενη εφαρμογή του Gatling
Θα χρησιμοποιήσουμε τη συσκευή εγγραφής προσομοίωσης του Gatling για να ξεκινήσουμε με τη δημιουργία φορτίου και τη δοκιμή απόδοσης. Πριν προχωρήσουμε περισσότερο, ας συζητήσουμε το σενάριο όπου θέλουμε να φορτώσουμε το τεστ.
Το σενάριο είναι μια περίπτωση χρήσης που προσπαθούμε να φορτώσουμε το τεστ. Τι σημαίνει αυτό, ουσιαστικά σημαίνει ότι θέλουμε να μιμηθούμε μια ενέργεια χρήστη σε ένα σενάριο ή ένα σύνολο βημάτων που πρέπει να δοκιμαστούν.
Για παράδειγμα, ας υποθέσουμε ότι ένας χρήστης έχει πρόσβαση σε οποιονδήποτε ιστότοπο ηλεκτρονικού εμπορίου όπως το Amazon.com και αναζητά ένα προϊόν και το προσθέτει στο καλάθι και, τέλος, ολοκλήρωση αγοράς με τα στοιχεία πληρωμής.
Αυτή η ενέργεια ολόκληρου του χρήστη είναι ένα μόνο σενάριο που περιέχει μεμονωμένα βήματα όπως
- Πλοήγηση στον ιστότοπο Amazon.com.
- Αναμονή για φόρτωση της σελίδας.
- Αναζήτηση προϊόντος μέσω της γραμμής αναζήτησης προϊόντων.
- Προσθήκη του προϊόντος στο καλάθι.
- Μετάβαση στο καλάθι και ολοκλήρωση αγοράς με το προϊόν.
- Πραγματοποίηση της πληρωμής.
Για να φορτώσουμε τη δοκιμή αυτού του πλήρους σεναρίου, από την οπτική γωνία του συστήματος ή του διακομιστή, πρέπει να καταλάβουμε ότι δεν είναι παρά μια συλλογή ή μια σειρά κλήσεων API που πραγματοποιούνται στον διακομιστή backend και αυτό θέλουμε στη δοκιμή απόδοσης.
Για αυτό το παράδειγμα, θα χρησιμοποιήσουμε το παρακάτω σενάριο σχετικά με την φιλοξενούμενη εφαρμογή Gatling:
# 1) Μεταβείτε στο Φιλοξενούμενη εφαρμογή Gatling .
#δύο) Κάντε κλικ στο 'Προσθήκη νέου υπολογιστή'.
# 3) Επιλέξτε Όνομα υπολογιστή ως Apple και όνομα εταιρείας ως 'Apple Inc' από το αναπτυσσόμενο μενού όπως φαίνεται στην παρακάτω εικόνα.
# 4) Κάντε κλικ στο «Δημιουργία αυτού του υπολογιστή» αφού εισαγάγετε τις λεπτομέρειες.
Ρυθμίστε το Gatling Recorder και καταγράψτε το πρώτο σενάριο
Σε αυτήν την ενότητα, θα συζητήσουμε πώς να ρυθμίσετε τη συσκευή εγγραφής δοκιμής Gatling για να δημιουργήσετε μια προσομοίωση για το σενάριο που έχουμε συζητήσει στην προηγούμενη ενότητα.
Θα χρησιμοποιήσουμε τη συσκευή εγγραφής προσομοίωσης Gatling, η οποία είναι σε πολύ απλή μορφή, έναν διακομιστή μεσολάβησης HTTP - πρέπει να είστε εξοικειωμένοι με άλλα εργαλεία εγγραφής HTTP όπως το Fiddler ή το διακομιστή μεσολάβησης χρωμίου Http κ.λπ. εγγραφή σε ένα σενάριο προσομοίωσης δοκιμής.
Ας δούμε πρώτα πώς να ρυθμίσουμε τη συσκευή εγγραφής Gatling:
# 1) Μόλις εγκατασταθεί ο φάκελος zip του Gatling, απλώς αποσυμπιέστε το φάκελο στη θέση όπου θέλετε να εγκατασταθεί το Gatling.
ιστότοπους για λήψη βίντεο από το youtube
#δύο) Μετά από αυτό το βήμα, πρέπει να ορίσουμε 2 μεταβλητές περιβάλλοντος που ονομάζονται - GATLING_HOME (για τον αρχικό κατάλογο Gatling) και GATLING_CONF (για τη θέση του φακέλου config του Gatling).
Ανάλογα με τον τύπο του λειτουργικού συστήματος (π.χ. Windows ή Mac ή Linux), ορίστε αυτές τις μεταβλητές περιβάλλοντος με τις παρακάτω τιμές:
GATLING_HOME = {gatling-install-directory}
Παράδειγμα:
GATLING_HOME=/Users/username/gatling-charts-highcharts-bundle-3.3.0/
GATLINE_CONF = {gatling-install-directory} / conf
Παράδειγμα:
GATLING_CONF=/Users/username/gatling-charts-highcharts-bundle-3.3.0/conf
Μόλις οι μεταβλητές έχουν οριστεί για επικύρωση, μπορείτε απλά να πατήσετε στο τερματικό την εντολή - εξαγωγή | λαβή 'GATLING' και η έξοδος θα πρέπει να δείχνει τις 2 μεταβλητές περιβάλλοντος που μόλις ορίσαμε.
# 3) Μόλις οριστούν αυτές οι μεταβλητές περιβάλλοντος, τότε πρέπει να ξεκινήσουμε τη συσκευή εγγραφής σεναρίων Gatling. Για λειτουργικό σύστημα με Windows, υπάρχει ένα αρχείο δέσμης που παρέχεται με εγκατάσταση Gatling και για λειτουργικό σύστημα Linux / MacOS, υπάρχει ένα αρχείο κελύφους.
Ακολουθεί η δομή αρχείων του φακέλου bin:
# 4) Έτσι, ανάλογα με τον τύπο λειτουργικού συστήματος, μπορούμε να επιλέξουμε τον τύπο αρχείου που θα εκτελεστεί για την τρέχουσα συσκευή εγγραφής. Λάβετε υπόψη ότι υπάρχουν 2 αρχεία εδώ που θα χρησιμοποιούμε:
- Αρχείο Gatling.sh / Gatling.bat - για να εκτελέσετε το σενάριο προσομοίωσης.
- Αρχείο Recorder.sh / recorder.bat - για να εκτελέσετε / ανοίξετε τη συσκευή εγγραφής προσομοίωσης Gatling.
# 5) Ας εκτελέσουμε το σενάριο της συσκευής εγγραφής για να ανοίξουμε τη συσκευή εγγραφής Gatling. Χρησιμοποιήστε το τερματικό Mac / Linux για να εκτελέσετε το σενάριο κελύφους (ή εκτελέστε απευθείας το αρχείο παρτίδας Windows).
. /$GATLING_HOME/bin/recorder.sh
# 6) Εάν οι μεταβλητές περιβάλλοντος έχουν ρυθμιστεί σωστά, τότε η παραπάνω εντολή θα πρέπει να ανοίξει το Gatling script recorder.
# 7) Παρατηρήστε τη θύρα Http / https στη συσκευή εγγραφής (η προεπιλεγμένη επιλογή είναι 8000 ή 8080) - αυτή είναι η θύρα όπου διαμορφώνεται ο ακροατής μεσολάβησης κίνησης Http του Gatling. Μπορούμε να αλλάξουμε αυτόν τον αριθμό θύρας σύμφωνα με την ευκολία μας (ή μπορούμε να συνεχίσουμε με τις προεπιλεγμένες τιμές).
πώς να ξεκινήσετε ένα έργο java στην έκλειψη
# 8) Τώρα ας διαμορφώσουμε τον διακομιστή μεσολάβησης χρωμίου για να ακούσουμε αυτήν τη θύρα - δηλαδή ουσιαστικά θέλουμε να δρομολογήσουμε την επισκεψιμότητα Http από το πρόγραμμα περιήγησης μέσω αυτού του ακροατή ή της συσκευής εγγραφής μεσολάβησης.
Ακολουθήστε αυτό Σύνδεσμος για να ρυθμίσετε έναν διακομιστή μεσολάβησης στο chrome για διαφορετικό λειτουργικό σύστημα.
# 9) Μόλις διαμορφωθεί η θύρα, τότε θα εκτελέσουμε το σενάριό μας στο Φιλοξενούμενη εφαρμογή Gatling.
# 10) Πριν ξεκινήσει η εκτέλεση του σεναρίου, θα πρέπει πρώτα να διαμορφώσουμε το όνομα πακέτου και το όνομα κλάσης για το προκύπτον σενάριο δοκιμής και στη συνέχεια να ξεκινήσουμε τον ακροατή μεσολάβησης κάνοντας απλώς κλικ στο κουμπί 'Έναρξη' στη συσκευή εγγραφής σεναρίων.
#έντεκα) Μόλις ξεκινήσει η συσκευή εγγραφής μεσολάβησης, θα εμφανιστεί ένα νέο παράθυρο και ουσιαστικά καταγράφει όλα τα αιτήματα που ενεργοποιούνται όταν εκτελείται το σενάριο στο πρόγραμμα περιήγησης.
# 12) Μεταβείτε στο Φιλοξενούμενη εφαρμογή Gatling στο πρόγραμμα περιήγησης.
Εάν μπορείτε να δείτε ότι το αίτημα καταγράφεται στο παράθυρο της συσκευής εγγραφής, αυτό σημαίνει ότι η ρύθμιση διακομιστή μεσολάβησης για το πρόγραμμα περιήγησης είναι σωστή και η συσκευή εγγραφής Gatling είναι πλέον σε θέση να καταγράφει τα αιτήματα σύμφωνα με το σενάριο δοκιμής που εκτελείται (εάν δεν επιστρέψετε στο βήμα # 7 για να διορθώσετε τη διαμόρφωση διακομιστή μεσολάβησης για πρόγραμμα περιήγησης / σύστημα).
# 13) Τώρα, αφού είμαστε σίγουροι ότι η εγκατάσταση λειτουργεί καλά, κάντε κλικ στο 'Εκκαθάριση' για να αφαιρέσετε τα πάντα από τη συσκευή εγγραφής και αρχίστε να εκτελείτε το σενάριο όπως αναφέρεται παρακάτω:
- Μεταβείτε στο Φιλοξενούμενη εφαρμογή Gatling
- Κάντε κλικ στο 'Προσθήκη νέου κουμπιού υπολογιστή'. Βεβαιωθείτε ότι έχετε προσγειωθεί σε μια νέα φόρμα υπολογιστή με τη διεύθυνση URL του προγράμματος περιήγησης ως http://computer-database.gatling.io/computers/new
- Τώρα συμπληρώστε τιμές στη φόρμα με - Όνομα υπολογιστή ως Apple και εταιρεία ως 'Apple inc' καθώς και από το αναπτυσσόμενο μενού.
- Κάντε κλικ στο 'Δημιουργία αυτού του υπολογιστή' και θα ανακατευθυνθείτε στο αρχική σελίδα
- Αυτό είναι όλο το σενάριο που θέλουμε να εκτελέσουμε και να δημιουργήσουμε ένα σενάριο αυτοματισμού χρησιμοποιώντας τη συσκευή εγγραφής σεναρίων Gatling. Μόλις εκτελεστούν τα παραπάνω βήματα, η συσκευή εγγραφής θα πρέπει να καταγράφει όλες τις κλήσεις HTTP που πραγματοποιούνται και θα πρέπει να μοιάζει παρακάτω.
- Λάβετε υπόψη ότι υπάρχουν και μερικές εντολές 'PAUSE' στο εγγεγραμμένο σενάριο. Αυτά δεν είναι παρά ο «χρόνος σκέψης» που καταγράφει η συσκευή εγγραφής για να μιμηθεί τη δράση του χρήστη - δηλαδή το χρόνο που απαιτείται μεταξύ των αιτημάτων. Αυτές οι τιμές μπορούν να διαμορφωθούν / αλλάξουν μόλις εκτελεστεί το σενάριο ανάλογα με τα πραγματικά neds.
# 14) Για να ολοκληρώσετε τη δημιουργία σεναρίου, κάντε κλικ στο 'Stop & Save' στο παράθυρο της συσκευής εγγραφής.
#δεκαπέντε) Το σενάριο προσομοίωσης θα πρέπει να δημιουργηθεί στον κατάλογο ή στον φάκελο προσομοίωσης που εμφανίζεται στην οθόνη διαμόρφωσης της εγγραφής Gatling.
Κατανόηση του σεναρίου προσομοίωσης
Μόλις δημιουργηθεί το σενάριο για το εκτελούμενο σενάριο, μεταβείτε στο φάκελο προσομοίωσης και ανοίξτε το σενάριο.
Παρακαλώ σημειώστε ότι το σενάριο θα δημιουργηθεί με το ίδιο πακέτο δομημένο που καθορίστηκε πριν από την έναρξη της εγγραφής - στην περίπτωσή μας, θα είναι com.learn.gatling και το όνομα της τάξης θα είναι 'Προσθήκη προϊόντος'.
Ας ανοίξουμε το αρχείο AddProduct.scala και προσπαθήστε να διαβάσετε τις διάφορες ενότητες του σεναρίου.
Αυτό μπορεί να εξηγηθεί ως εξής:
# 1) Διαμόρφωση ρύθμισης :δηλ httpProtocol και κεφαλίδες - Σε αυτήν την ενότητα γίνεται συνολική διαμόρφωση δεδομένων για το σενάριο, όπως:
- Τύπος πρωτοκόλλου - Http ή https,
- Άλλα πράγματα όπως το baseUrl για χρήση σε επόμενα αιτήματα.
- Πληροφορίες κεφαλίδας - κοινές πληροφορίες κεφαλίδας, καθώς και οι κεφαλίδες που αποστέλλονται με μεμονωμένα αιτήματα. Ανατρέξτε στις κεφαλίδες_0 και κεφαλίδες_2 στο απόσπασμα κώδικα παρακάτω:
val httpProtocol = http .baseUrl('http://computer-database.gatling.io') .inferHtmlResources(BlackList('''.*.js''', '''.*.css''', '''.*.gif''', '''.*.jpeg''', '''.*.jpg''', '''.*.ico''', '''.*.woff''', '''.*.woff2''', '''.*.(t|o)tf''', '''.*.png''', '''.*detectportal.firefox.com.*'''), WhiteList()) .acceptHeader ('text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8, application/signed-exchange;v=b3') .acceptEncodingHeader('gzip, deflate') .acceptLanguageHeader('en-GB,en-US;q=0.9,en;q=0.8') .upgradeInsecureRequestsHeader('1') .userAgentHeader('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36') val headers_0 = Map('Proxy-Connection' -> 'keep-alive') val headers_2 = Map( 'Origin' -> 'http://computer-database.gatling.io', 'Proxy-Connection' -> 'keep-alive')
# 2) Ορισμός σεναρίου: Αυτό περιέχει το πραγματικό σενάριο και τη σειρά των αιτημάτων που πρέπει να εκτελεστούν προκειμένου να δημιουργηθεί εκ νέου το σενάριο που εκτελείται στο παράθυρο του προγράμματος περιήγησης.
Επίσης, ένα σημαντικό σημείο που πρέπει να σημειωθεί εδώ είναι: μόλις αναφέραμε τη σχετική διεύθυνση URL εδώ για τα αιτήματα, αντί για το πλήρες URL. Αυτό συμβαίνει επειδή θα το χρησιμοποιήσουμε Διαμόρφωση httpProtocol έχουμε συζητήσει στο σημείο # 1, όπου ορίζονται τα δεδομένα διαμόρφωσης σεναρίου.
val scn = scenario('AddProduct') .exec(http('request_0') .get('/computers') .headers(headers_0) .resources(http('request_1') .get('/computers/new') .headers(headers_0))) .pause(4) .exec(http('request_2') .post('/computers') .headers(headers_2) .formParam('name', 'apple') .formParam('introduced', '') .formParam('discontinued', '') .formParam('company', '1'))
# 3) Εκτέλεση σεναρίου: Αυτή η ενότητα είναι η πιο σημαντική ενότητα που περιέχει τα βήματα ρύθμισης σεναρίου.
Η διαμόρφωση ένεσης εδώ είναι ο αριθμός των χρηστών / νήματα ή με άλλα λόγια, το φορτίο με το οποίο θέλουμε να δοκιμάσουμε αυτό το σενάριο.
Η προεπιλεγμένη τιμή για έναν αριθμό χρηστών είναι πάντα 1 και αυτό μπορεί να αλλάξει πριν από την εκτέλεση του σεναρίου.
Επίσης, λάβετε υπόψη ότι χρησιμοποιούμε επίσης τον ορισμό httpProtocol που έχουμε συζητήσει στο σημείο # 1 ο οποίος περιέχει όλες τις βασικές διαμορφώσεις για το σενάριο που θα εκτελεστεί.
setUp (scn.inject (atOnceUsers (1))). πρωτόκολλα (httpProtocol)
Στο επόμενο σεμινάριο θα εξετάσουμε περισσότερες λεπτομέρειες σχετικά με τη διαμόρφωση έγχυσης και φόρτωσης.
Εκτέλεση δοκιμής με χρήση σεναρίου προσομοίωσης
Τώρα, θα δούμε πώς να εκτελέσουμε το σενάριο χρησιμοποιώντας αυτό το σενάριο προσομοίωσης που δημιουργήθηκε χρησιμοποιώντας τη συσκευή εγγραφής. Το προκύπτον σενάριο που δημιουργείται είναι στην πραγματικότητα μια κλάση βασισμένη σε Scala που περιέχει λεπτομέρειες γύρω από το σενάριο που εκτελέστηκε μέσω του προγράμματος περιήγησης.
Ακολουθεί ένα βίντεο εκμάθησης για την εκτέλεση σεναρίου Gatling:
Η εγκατάσταση του Gatling συνοδεύεται από ένα σενάριο κελύφους (για χρήστες Windows, είναι ένα σενάριο δέσμης) που θα μπορούσε να χρησιμοποιηθεί για την εκτέλεση αυτής της προσομοίωσης.
Ακολουθήστε τα παρακάτω βήματα για να εκτελέσετε τη δημιουργία προσομοίωσης:
# 1) Μεταβείτε στο φάκελο bin της εγκατάστασης του Gatling ή απλώς μεταβείτε στο - $ GATLING_HOME / κάδο
#δύο) Εκτελέστε το αρχείο Gatling.sh για Linux / Mac OS (ή το αρχείο Gatling.bat για χρήστες Windows).
# 3) Σε περίπτωση πολλαπλών αρχείων σεναρίων που υπάρχουν στο φάκελο προσομοίωσης, το σενάριο θα ζητήσει από τον χρήστη να επιλέξει την προσομοίωση που θέλει να εκτελέσει ο χρήστης (Για προσομοίωση αυτού, δημιουργήστε το ίδιο σενάριο σε διαφορετικά πακέτα και όταν εκτελείται το σενάριο Gatling, μπορείτε δείτε ότι εμφανίζει 2 διαφορετικά σενάρια).
# 4) Επιλέγεται η προσομοίωση (ή έχει οριστεί ως προεπιλεγμένη στην προσομοίωση που υπάρχει στον φάκελο εάν υπάρχει μόνο ένα σενάριο προσομοίωσης διαθέσιμο).
# 5) Το σενάριο ζητά τώρα να προσθέσει μια προαιρετική περιγραφή εκτέλεσης. Μπορείτε απλά να το αγνοήσετε και να πατήσετε enter για να ξεκινήσετε την εκτέλεση της προσομοίωσης.
# 6) Κατά την εκτέλεση της προσομοίωσης, μπορείτε να δείτε τις εκθέσεις εκτέλεσης να εκτυπώνονται στο τερματικό και να εμφανίζονται παράμετροι όπως ο χρόνος απόκρισης, τα συνολικά αιτήματα, η επιτυχία / αποτυχίες κ.λπ., όταν ολοκληρωθεί η εκτέλεση του σεναρίου.
# 7) Το Gatling δημιουργεί επίσης μια λεπτομερή αναφορά βασισμένη σε HTML στο τέλος της ολοκλήρωσης εκτέλεσης σεναρίου η οποία περιέχει πολλά διαφορετικά σημεία δεδομένων σε σχέση με το σενάριο που εκτελέστηκε.
Στο επόμενο σεμινάριο θα εξετάσουμε τις λεπτομέρειες της δημιουργίας αναφοράς.
Πλεονεκτήματα της χρήσης του Gatling
Η Gatling παρέχει πολλές δυνατότητες πλούσιες σε χαρακτηριστικά, προκειμένου να δημιουργήσει μια δοκιμαστική σουίτα αυτοματισμού καλής απόδοσης, αξιοποιώντας το ευρύ Gatling DSL, καθώς και αυξανόμενη κοινοτική υποστήριξη για βοήθεια και να απαντήσετε σε ερωτήματα.
Είναι σημαντικό να σημειωθεί εδώ ότι σε αντίθεση με άλλα εργαλεία όπως το JMeter, το Gatling περιλαμβάνει μια απότομη καμπύλη μάθησης, αλλά αντί αυτού, δίνει πολλές δυνατότητες προγραμματισμού για να δημιουργήσει ένα ισχυρό και πλήρως λειτουργικό σύνολο σεναρίων προσομοίωσης απόδοσης και δοκιμής φόρτωσης.
Μερικά από αυτά τα πλεονεκτήματα είναι τα εξής:
- Είναι ελαφρύ και επιτρέπει σε ένα νήμα να χρησιμοποιείται για περισσότερα από ένα αιτήματα, σε αντίθεση με τα περισσότερα άλλα εργαλεία perf όπου ένα νήμα εξισώνεται με έναν χρήστη.
- Η χρήση ενός νήματος για πολλαπλά αιτήματα επιτρέπει στο Gatling να κλιμακώσει περισσότερο και να δημιουργήσει μεγαλύτερο φορτίο ακόμη και μέσω ενός μηχανήματος.
- Το Gatling παρέχει τη δυνατότητα να τρέχει σε κατανεμημένη λειτουργία όταν υπάρχει ένα τεράστιο φορτίο που πρέπει να προσομοιωθεί.
- Παρέχει υποστήριξη για πολλά άλλα πρωτόκολλα εκτός από HTTP,για παράδειγμα, Websockets, MQTT, JDBC, κ.λπ. όλα μπορούν να δοκιμαστούν απόδοσης χρησιμοποιώντας το Gatling.
- Το Gatling παρέχει μια πλούσια σε χαρακτηριστικά DSL - Domain Specific Language, η οποία έχει εύκολη σύνταξη και παρέχει ισχυρές δυνατότητες όταν συνδυάζονται για να δημιουργήσουν ένα σενάριο προσομοίωσης.
- Παρέχει επίσης πολλές πολύπλοκες δυνατότητες ελέγχου προσομοίωσης όπως βρόχους, προσομοίωση χρόνου σκέψης, αιτήματα πεταλούδας πέρα από το επιθυμητό RPS κ.λπ.
- Διαθέτει πλούσιες δυνατότητες αναφοράς έξω από το κουτί και μπορούν επίσης να προσαρμοστούν ανάλογα με τις απαιτήσεις.
συμπέρασμα
Σε αυτό το σεμινάριο, αγγίξαμε τα βασικά στοιχεία της χρήσης του Gatling ως εργαλείου δοκιμής φορτίου της επιλογής. Με το εκφραστικό DSL και την εξαιρετική υποστήριξη για το πρωτόκολλο HTTP, το Gatling αποκτά γρήγορα δημοτικότητα για να χρησιμοποιηθεί ως εργαλείο επιλογής για πολλούς.
Μάθαμε επίσης για το Gatling recorder και το Gatling script runner με ένα δείγμα σεναρίου προσομοίωσης που βοήθησε να κατανοήσουμε τη βασική έννοια της εγγραφής ενός σεναρίου προσομοίωσης που θα μπορούσε στη συνέχεια να εκτελεστεί στο μέλλον χρησιμοποιώντας το πρόγραμμα εκτέλεσης του Gatling Script.
Στο επόμενο σεμινάριο, θα καλύψουμε τη σύνταξη σεναρίων Gatling ως έργα Scala - δηλαδή χωρίς τη χρήση της συσκευής εγγραφής και θα κατανοήσουμε τα πρότυπα αναφοράς που δημιουργούνται όταν το Gatling ολοκληρώνει την εκτέλεση προσομοίωσης.
Συνιστώμενη ανάγνωση
- Φόρτωση δοκιμής με HP LoadRunner Tutorials
- Συσχέτιση - Δοκιμή φορτίου με LoadRunner
- Tutorial Soak Testing - Τι είναι το Soak Testing
- Load Testing Using LoadUI - Ένα δωρεάν και ανοιχτού κώδικα εργαλείο δοκιμής φόρτωσης
- WebLOAD Review - Ξεκινώντας με το WebLOAD Load Testing Tool
- Εγχειρίδιο καταστροφικών δοκιμών και μη καταστροφικών δοκιμών
- Tutorial Test Usability: Ένας πλήρης οδηγός έναρξης
- Δοκιμή απόδοσης έναντι δοκιμής φορτίου έναντι δοκιμής πίεσης (διαφορά)