Ελεγκτές μέσα JMeter: Loop, Simple, Transaction, Module, Random
Τι είναι ο Λογικός Ελεγκτής;
Οι λογικοί ελεγκτές σάς επιτρέπουν να ορίσετε τη σειρά επεξεργασίας του αιτήματος σε ένα νήμα. Σας επιτρέπει να ελέγχετε το "πότε" να στείλετε ένα αίτημα χρήστη σε έναν διακομιστή ιστού. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε τυχαίους ελεγκτές για να στείλετε αιτήματα HTTP στον διακομιστή τυχαία
Οι λογικοί ελεγκτές καθορίζουν η σειρά στο οποίο εκτελείται το αίτημα του χρήστη.
Μερικοί ελεγκτές Logic που χρησιμοποιούνται συνήθως είναι παρακάτω:
Ελεγκτής εγγραφής
JMeter κουτί ρεκόρ σας Δοκιμές βήματα? ένας ελεγκτής εγγραφής είναι α κράτησης θέσης για να αποθηκεύσετε αυτά τα βήματα εγγραφής.
Απλός ελεγκτής
Ο απλός ελεγκτής είναι απλώς ένα δοχείο για αίτημα χρήστη.
Ελεγκτής βρόχου
Ο ελεγκτής βρόχου εκτελεί το αίτημα χρήστη καθορισμένο αριθμό φορών ή τρέξε για πάντα όπως φαίνεται στο σχήμα:
Τυχαίος ελεγκτής
Το Random Controller κάνει όλα τα αιτήματα των χρηστών να εκτελούνται το τυχαίο σειρά σε κάθε περίοδο βρόχου.
Για παράδειγμα, έχετε 3 αιτήματα χρηστών στον ιστότοπο http://www.google.com με την εξής σειρά:
- Αίτημα HTTP
- Αίτημα FTP
- Αίτημα JDBC
Αυτά τα 3 αιτήματα θα πρέπει να εκτελούνται 5 φορές. Συνολικά 15 αιτήματα χρηστών θα σταλούν στον διακομιστή Google έως JMeter.
In διαδοχική παραγγελία, αποστέλλονται αιτήματα διαδοχικά με την εξής σειρά:
Αίτημα HTTP ->Αίτημα FTP->Αίτημα JDBC
για κάθε βρόχο.
In τυχαίος παραγγελία, τα αιτήματα αποστέλλονται ως τυχαία,
Αίτημα FTP ->Αίτημα HTTP->Αίτημα JDBC
Or
Αίτημα JDBC ->Αίτημα FTP->Αίτημα HTTP
Για κάθε βρόχο.
Ελεγκτής μονάδας
Ο στόχος του Module Controller είναι να προσθέσει αρθρωτότητα σε JMeter.
Η γενική ιδέα είναι ότι οι εφαρμογές Ιστού αποτελούνται από μικρές μονάδες λειτουργικότητας (π.χ. Logon, Create Account, Logoff…). Αυτή η λειτουργία μπορεί να αποθηκευτεί σε Απλός ελεγκτής ως «ενότητες». Ο ελεγκτής μονάδας θα επιλέξει ποια λειτουργική μονάδα πρέπει να εκτελεστεί.
Σκεφτείτε το ακόλουθο σενάριο -
Θέλετε να προσομοιώσετε:
- Οι χρήστες 50 αποσυνδέομαι,
- Οι χρήστες 100 συνδεθείτε
- Οι χρήστες 30 search www.google.com
Μπορείς να χρησιμοποιήσεις JMeter για τη δημιουργία 3 ενοτήτων. Κάθε ενότητα προσομοιώνει κάθε δραστηριότητα χρήστη: Σύνδεση, Αποσύνδεση και Αναζήτηση.
Ο ελεγκτής μονάδας επιλέγει ποια μονάδα πρέπει να εκτελεστεί.
Άλλοι σημαντικοί ελεγκτές
- Παρεμβάλλει Ελεγκτής: μαζεύει και φτιάχνει ένας εκτελείται αίτημα χρήστη κάθε βρόχος του νήματος.
- Διάρκεια Ελεγκτής: χειριστήρια πόσο καιρό τα παιδιά του επιτρέπεται να τρέχουν.
Για παράδειγμα, εάν καθορίσατε το Runtime Controller 10 δευτερόλεπτα, JMeter θα εκτελέσει τη δοκιμή σας για 10 δευτερόλεπτα.
- Συναλλαγή Ελεγκτής: μετρά το συνολικό χρόνο μεταφέρονται σε φινίρισμα εκτέλεση δοκιμής
- Συμπεριλάβετε Ελεγκτής: έχει σχεδιαστεί για να χρησιμοποιεί ένα εξωτερικό σχέδιο δοκιμής. Αυτός ο ελεγκτής σάς επιτρέπει να χρησιμοποιείτε πολλαπλά σχέδια δοκιμών JMeter. Δείτε αναλυτικά στο JMeter Δοκιμές Απόδοσης.
Παράδειγμα ελεγκτή βρόχου
Αυτή η ενότητα σάς δείχνει βήμα προς βήμα οδηγίες για προσθήκη Ελεγκτής βρόχου ορίσετε στο τρέχον σχέδιο δοκιμής απόδοσης.
Ο ελεγκτής βρόχου κάνει τους δειγματολήπτες να εκτελούνται ως ορισμένο αριθμό φορών, επιπλέον της τιμής βρόχου που καθορίσατε για την ομάδα νημάτων. Για παράδειγμα, εάν εσείς
- Προσθέστε ένα αίτημα HTTP σε έναν ελεγκτή βρόχου με πλήθος βρόχων 50
- Διαμορφώστε το πλήθος βρόχων Ομάδας νημάτων σε 2
- Στη συνέχεια, JMeter θα στείλει συνολικά 50 * 2 = 100 αιτήματα HTTP.
Αυτή είναι η οδικός χάρτης αυτού του παραδείγματος:
Βήμα 1) Διαμόρφωση ομάδας νημάτων
We επαναχρησιμοποίηση το Βήμα 1, 2 στο σεμινάριο JMeter Δοκιμές Απόδοσης.
-
Προσθήκη ομάδας νημάτων
Κάντε δεξί κλικ στο Σχέδιο δοκιμής και προσθέστε μια νέα ομάδα νημάτων: Πρόσθεση-> Νήματα (Χρήστες) ->Ομάδα νημάτων
Αλλά στον πίνακα ελέγχου Ομάδας νημάτων, εισαγάγετε τις ιδιότητες νήματος ως εξής:
Θα το κάνει ένας αίτημα χρήστη στον διακομιστή ιστού google.com και εκτελέστε το 2 φορές.
-
Πρόσθεση JMeter στοιχεία
Προσθέστε το προεπιλεγμένο αίτημα HTTP στο www.google.com.
-
Προσθήκη ελεγκτή βρόχου
Κάντε δεξί κλικ στο Thread Group -> Logic Controller -> Loop Controller
Βήμα 2) Διαμόρφωση ελεγκτή βρόχου
Προσθέστε την τιμή 50 στο πεδίο Loop Count όπως στην παρακάτω εικόνα. Θα κάνει ένας αίτημα χρήστη στον διακομιστή ιστού google.com Τρέξε το 50 φορές, εκτός από την τιμή βρόχου =2, που καθορίσατε για την Ομάδα Νημάτων παραπάνω. Έτσι JMeter θα στείλει συνολικά 2 * 50 = 100 Αιτήματα HTTP.
Κάντε δεξί κλικ στο Loop Controller, Προσθήκη -> Sampler -> HTTP αίτημα
Βήμα 3) Προσθήκη Προβολής Αποτελεσμάτων στον Πίνακα
Χρησιμοποιούμε ξανά το Βήμα 2 στο χρονόμετρο για να προσθέσετε Προβολή αποτελεσμάτων στον Πίνακα
Έτσι το σχέδιο δοκιμής φαίνεται στο παρακάτω σχήμα
Βήμα 4) Εκτελέστε τη δοκιμή σας
Τώρα επιστρέψτε Προβολή αποτελεσμάτων στον πίνακα, κάντε κλικ στο κουμπί Έναρξη στη γραμμή μενού (Ctrl+R) για να εκτελέσετε μια δοκιμή
Όπως φαίνεται στο παρακάτω σχήμα, JMeter προσομοιώνει ένα αίτημα χρήστη, που αποστέλλεται 100 φορές, στον web server http://www.google.com/. Η δοκιμή διακόπτεται μετά την αποστολή ενός αιτήματος χρήστη 100 φορές.
Αντιμετώπιση προβλημάτων
- Εάν αντιμετωπίσετε το πρόβλημα κατά την εκτέλεση του παραπάνω σεναρίου… κάντε τα εξής
- Ελέγξτε εάν συνδέεστε στο διαδίκτυο μέσω διακομιστή μεσολάβησης. Εάν ναι, αφαιρέστε τον διακομιστή μεσολάβησης.
- Ανοίξτε μια νέα παρουσία του Jmeter
- Ανοίξτε το ControllerTestPlan.jmx σε Jmeter
- Κάντε κλικ στην Ομάδα νημάτων -> Προβολή αποτελεσμάτων στον πίνακα
- Εκτελέστε το Test