soa testing tutorial
Εκμάθηση δοκιμών SOA:
Σε αυτό το άρθρο, θα συζητήσουμε τις τεχνικές δοκιμών για μια αρχιτεκτονική SOA.
Το λογισμικό της τρέχουσας ημέρας είναι τόσο ευέλικτο και επιρρεπές να χειρίζεται τις μεταβαλλόμενες προσδοκίες των χρηστών κάθε τόσο, ένα αυτόνομο μοντέλο δεν είναι χρήσιμο.
Εκεί το SOA ταιριάζει ως λύση.
Αυτός είναι ο λόγος για τον οποίο, πολλές εταιρείες προσαρμόζονται ή προσπαθούν να προσαρμόσουν την προσέγγιση SOA λόγω των πλεονεκτημάτων της όπως: Μείωση κόστους, ευελιξία των επιχειρήσεων, εύκολη συντήρηση κ.λπ. Με την επερχόμενη αγορά γεμάτη αρχιτεκτονική SOA, καθίσταται απαραίτητο για τους δοκιμαστές της Σύγχρονης Ημέρας να έχουν μια δίκαιη ιδέα για τις δοκιμές SOA.
η καλύτερη δωρεάν εφαρμογή λήψης μουσικής για Android
Σε αυτό το άρθρο, θα καλύψουμε τα βασικά του SOA με παραδείγματα αυτού.
Αυτό θα δώσει στους αναγνώστες μια βασική ιδέα για το SOA. Αυτό θα ακολουθούσε η προσέγγιση υλοποίησης των διαδικτυακών υπηρεσιών. Τέλος, θα περάσουμε στη διαδικασία δοκιμής που μπορεί να ακολουθηθεί για ένα μοντέλο αρχιτεκτονικής SOA.
Τι θα μάθετε:
- Τι είναι το SOA;
- Παραδείγματα SOA
- Υπηρεσίες διαδικτύου
- Διαδικασία δοκιμής SOA
- Προκλήσεις στη δοκιμή SOA
- Εργαλεία δοκιμών SOA
- Συνιστώμενη ανάγνωση
Τι είναι το SOA;
Το SOA ή Sevice-Oriented-Architecture είναι μια ευέλικτη / ευέλικτη / αποτελεσματική μέθοδος ενσωμάτωσης διαφόρων εφαρμογών / υπηρεσιών έτσι ώστε να επιτευχθούν συγκεκριμένες επιχειρηματικές ανάγκες.
- Σε αντίθεση με άλλα περίπλοκα συστήματα, το SOA περιλαμβάνει μικρότερα εξαρτήματα / υπηρεσίες / μικροϋπηρεσίες που συνδέονται μεταξύ τους έτσι ώστε να ικανοποιούν τις επιχειρηματικές ανάγκες.
- Οι υπηρεσίες είναι οι μονάδες που κάνουν το σύστημα ολόκληρο και όταν υπάρχει ανάγκη για αλλαγή, αντί να αλλάζει ολόκληρο το σύστημα, η συγκεκριμένη υπηρεσία τροποποιείται.
- Μια υπηρεσία είναι ένα στοιχείο που είναι ικανό να εκτελεί μια εργασία.
- Αυτή η αρχιτεκτονική είναι πιο πωλήσιμη από το παλαιό σύστημα, καθώς ο Τελικός Χρήστης λαμβάνει μόνο τις απαραίτητες υπηρεσίες για να καλύψει τις ανάγκες του. Δεν χρειάζεται να πάρει ολόκληρο το σύστημα.
- Οι υπηρεσίες / μικρο-υπηρεσίες είναι χαλαρά συνδεδεμένες, επαναχρησιμοποιήσιμες, χωρίς κατάσταση, οι οποίες κάνουν το σύστημα ακόμα πιο ισχυρό.
- Αυτό το μοντέλο είναι πολύ οικονομικά αποδοτικό όσον αφορά την ανάπτυξη, την ανάπτυξη και τη συντήρηση.
Παραδείγματα SOA
Επιχειρηματική ανάγκη: Μια εφαρμογή στην οποία ένας Χρήστης μπορεί να συνδεθεί και να αναζητήσει Εστιατόρια με βάση τη Γεωγραφική τοποθεσία, Πραγματοποιήστε λήψη των λεπτομερειών του εστιατορίου και του Μενού από το διακομιστή μόλις ολοκληρωθεί η αναζήτηση και τέλος μπορεί να γίνει πληρωμή για την παραγγελία.
Αυτή η επιχειρησιακή ανάγκη μπορεί να επιτευχθεί με την εφαρμογή του SOA.
Μπορούν να υπάρχουν υπηρεσίες / μικρο-υπηρεσίες ως εξής, ώστε να εκτελούνται διάφορες εργασίες:
- Κατά τη σύνδεση, η υπηρεσία που θα χρησιμοποιηθεί είναι «Υπηρεσία ελέγχου ταυτότητας»
- Η αναζήτηση εστιατορίων θα γινόταν από την «Υπηρεσία εντοπισμού γεωγραφικών»
- Το μενού λήψης πρέπει να γίνει από την «Υπηρεσία λήψης μενού»
- Τέλος, η πληρωμή θα γίνεται από την «Υπηρεσία πληρωμών»
Κάθε μία από τις προαναφερθείσες υπηρεσίες κάνει κάτι μοναδικό ώστε να κάνει το σύστημα να λειτουργεί και να παραδώσει αυτό που πρέπει να κάνει. Τώρα, εάν ένας πελάτης πρέπει να δει μόνο το εστιατόριο και το μενού του, αλλά δεν χρειάζεται διεπαφή Payment Gateway, θα αγοράσει / αναπτύξει μόνο τις τρεις πρώτες υπηρεσίες.
Αυτό καθιστά την εργασία απλή για ανάπτυξη, ανάπτυξη, πωλήσεις, συντήρηση και μετά από όλα τον πελάτη / τελικό χρήστη.
Υπηρεσίες διαδικτύου
- Πρόκειται για API (Εφαρμογές Interfaces προγραμματισμού) που διευκολύνουν την αλληλεπίδραση μεταξύ διαφορετικών προγραμμάτων λογισμικού.
- Υπάρχει ένας πάροχος υπηρεσιών που φιλοξενεί την υπηρεσία στον Ιστό. Ως μέρος της φιλοξενίας, ένα WSDL φιλοξενείται από τον πάροχο.
- Όταν ο Πελάτης στέλνει ένα μήνυμα αίτησης στον πάροχο υπηρεσιών, η επικοινωνία πραγματοποιείται με τη χρήση του URL / WSDL.
- Στο παρακάτω δεδομένο παράδειγμα, ο διακομιστής Geolocation φιλοξενεί μια υπηρεσία Web που χρησιμοποιείται από τον αιτούντα υπηρεσίας.
Διαδικασία δοκιμής SOA
Κάθε προϊόν, μοντέλο, υποδομή πρέπει να περάσει από τη φάση δοκιμών, ώστε να ικανοποιήσει τον τελικό χρήστη όσον αφορά ένα προϊόν καλής ποιότητας. Η δοκιμή SOA δεν περιορίζεται μόνο σε δοκιμές επιπέδου / δοκιμές πρωτοκόλλου υπηρεσίας Ιστού. Αυτή είναι η συνολική δοκιμή της αρχιτεκτονικής και κάθε λεπτό μέρος αυτής.
Η δοκιμαστική προσέγγιση μπορεί να είναι παρόμοια με αυτήν της κανονικής διαδικασίας δοκιμών. δηλ.
- Διαδικασία αναθεώρησης απαιτήσεων
- Σχεδιασμός δοκιμών
- Σχεδιασμός δοκιμής
- Ρύθμιση περιβάλλοντος
- Φάση εκτέλεσης
- Φάση αναφοράς
Η διαδικασία δοκιμής SOA περιστρέφεται γύρω από 3 επίπεδα στην αρχιτεκτονική:
- Οι καταναλωτές υπηρεσιών
- Επίπεδα διεργασιών
- Επίπεδα υπηρεσίας
Πηγαίνοντας με το ίδιο παράδειγμα παραπάνω, μπορούμε να έχουμε τα επίπεδα μας ως εξής:
- Το επίπεδο του καταναλωτή υπηρεσιών βοηθά στην αλληλεπίδραση των καταναλωτών. Αυτό βοηθά στην ανάγνωση της εισόδου από τον τελικό χρήστη και επιστρέφει την κατάλληλη απάντηση για το αίτημα που ελήφθη. Με άλλα λόγια, αυτό έχει βασικά τη διεπαφή διεπαφής χρήστη.
- Αυτό είναι το επίπεδο που εστιάζει στο μέτωπο της εφαρμογής. Αυτό το επίπεδο στο παράδειγμά μας θα έχει μεθόδους ελέγχου ταυτότητας, δημιουργία ενός χρήστη κ.λπ.
- Τα επίπεδα υπηρεσιών είναι οι επιχειρηματικές λειτουργίες όσον αφορά τις υπηρεσίες. Όλες οι υπηρεσίες που καλούνται στην πραγματικότητα όταν εκτελείται μια συγκεκριμένη εργασία βρίσκονται σε αυτό το επίπεδο.
Οι δοκιμές μπορούν βασικά να χωριστούν σε 4 διαφορετικά στάδια.
Επίπεδο 1
1) Δοκιμή επιπέδου υπηρεσίας:
- Κάθε υπηρεσία που εμπλέκεται στο σύστημα δοκιμάζεται μεμονωμένα βάσει μιας μεθόδου Αίτησης και απόκρισης.
- Αυτό το τεστ είναι υποχρεωτικό και πολύ σημαντικό για να προχωρήσουμε σε άλλες διαδικασίες δοκιμών.
2) Λειτουργική δοκιμή:
- Το τεστ διεξάγεται για τις υπηρεσίες στην επιχείρησή τους που πρέπει να βρει αν η απόκριση που λαμβάνεται είναι σωστή.
- Οι επιχειρηματικές ανάγκες μετατρέπονται πρώτα στις δοκιμαστικές περιπτώσεις και διαμορφώνονται οι δηλώσεις αιτήματος.
- Στη συνέχεια, οι δηλώσεις αιτήματος υποβάλλονται σε επεξεργασία για να δουν αν οι ληφθείσες απαντήσεις είναι σωστές.
- Σε περίπτωση μη έγκυρων δεδομένων εισαγωγής, θα πρέπει να ρίχνεται σωστός κωδικός σφάλματος ή να ενεργοποιείται το κατάλληλο μήνυμα σφάλματος.
- Οι μορφές της απόκρισης, καθώς και τα αρνητικά σενάρια, πρέπει να εκτελεστούν.
3) Δοκιμή ασφάλειας:
- Όποτε πρόκειται για μια υπηρεσία ιστού, ο έλεγχος ασφαλείας παίζει βασικό ρόλο στην επιτυχία της διαδικασίας δοκιμής.
- Οι πύλες ελέγχου ταυτότητας, οι πύλες πληρωμής κ.λπ. πρέπει να κρυπτογραφούνται όταν αναλύονται τα δεδομένα.
- Όταν πρόκειται για XML, θα πρέπει να επαληθευτούν ευπάθειες όπως CSRF, SQL injection.
4) Δοκιμή απόδοσης:
- Οι υπηρεσίες που χρησιμοποιούνται στην αρχιτεκτονική φιλοξενούνται έτσι ώστε πολλές άλλες εφαρμογές να μπορούν να τη χρησιμοποιήσουν. Ο έλεγχος απόδοσης διασφαλίζει την αξιοπιστία αυτών των υπηρεσιών.
- Ο έλεγχος των υπηρεσιών πρέπει να γίνει για να μάθετε τα ακόλουθα σύνολα αποτελεσμάτων.
- Για τον προσδιορισμό της σταθερότητας των υπηρεσιών.
- Για να επικυρώσετε την επεκτασιμότητα των υπηρεσιών.
- Συμπεριφορά σέρβις υπό συνθήκες μέγιστου φορτίου
- Για να βρείτε τους χρόνους απόκρισης σε όλες τις υπηρεσίες
Επίπεδο 2
1) Δοκιμή διαδικασίας:
- Αυτή η διαδικασία περιλαμβάνει τον έλεγχο διαφόρων επιχειρηματικών διαδικασιών.
- Αυτό θα πρέπει να περιλαμβάνει τα σενάρια ενοποίησης των υπηρεσιών Web και της εφαρμογής που καλύπτουν τις επιχειρηματικές απαιτήσεις
- Η χρήση των προσομοιωτών θα πρέπει να γίνει για τη δημιουργία δεδομένων εισόδου δείγματος και η επικύρωση πρέπει να γίνεται για τις αντίστοιχες εξόδους.
- Η ροή δεδομένων από διαφορετικά επίπεδα πρέπει να πραγματοποιείται για να αποδειχθεί ομαλή λειτουργία του συστήματος όταν είναι ενσωματωμένο.
Βαθμίδα # 3
1) Δοκιμή από άκρο σε τέλος:
πώς να ανοίξετε τα αρχεία .bin windows 10
- Αυτή η φάση προορίζεται να επικυρώσει τις επιχειρησιακές απαιτήσεις τόσο λειτουργικά όσο και μη λειτουργικά.
- Η διεπαφή χρήστη της εφαρμογής επικυρώνεται.
- Η σχετική επιχειρηματική διαδικασία έχει δοκιμαστεί.
- Η ροή δεδομένων από άκρο σε άκρο επικυρώνεται σε αυτήν τη φάση.
- Η συνεργασία με όλες τις υπηρεσίες είναι επικυρωμένες μεταξύ τους.
Βαθμίδα # 4
1) Δοκιμή παλινδρόμησης:
- Η σταθερότητα του συστήματος στις σταδιακές εκδόσεις έκδοσης επικυρώνεται από αυτόν τον έλεγχο.
- Αυτό μπορεί να επιτευχθεί είτε με χειροκίνητη δοκιμή / αυτοματοποίηση.
Προκλήσεις στη δοκιμή SOA
Κάποιος σωστά είπε: «Μεγαλύτερο το πλέγμα. Μεγαλύτερο είναι το χάος! ». Το SOA μπορεί να γίνει ένα πολύ περίπλοκο παιδί που πεινάει την προσοχή.
Με άλλα λόγια, με τόσα πολλά λεπτά κομμάτια που αποτελούν την αρχιτεκτονική SOA, καθίσταται μια πολύ δύσκολη δουλειά για την πιστοποίησή της στο Testing.
- Δύσκολο να προσομοιώσετε τα περιβάλλοντα δοκιμών για να συνεχίσετε τη διαδικασία δοκιμής.
- Τα προϊόντα που εμπλέκονται στο μοντέλο μπορεί να είναι ίδιας τεχνολογίας / προμηθευτή. Όμως, μπορεί επίσης να είναι διαφορετικά. Περισσότερα προβλήματα;
- Οι συνδυασμοί δοκιμών αυξάνονται με τον αριθμό των παρεχόμενων υπηρεσιών / στοιχείων.
- Πολυπλοκότητα στο μοντέλο
- Η αναπαραγωγή / δοκιμή ζητημάτων είναι μια δύσκολη δουλειά.
- Σε αντίθεση με άλλα μοντέλα, το βασικό επίκεντρο των δοκιμών θα πρέπει να είναι το επιχειρηματικό πεδίο και όχι η υπηρεσία και το χαρακτηριστικό της.
Εργαλεία δοκιμών SOA
Υπάρχουν πολλές εφαρμογές για δοκιμές SOA. Τα εργαλεία δοκιμών SOA επιλέγονται με βάση τα ακριβή αποτελέσματα και την καλύτερη παραγωγικότητά τους.
- ΣαπούνιUI: Αυτό είναι ένα δωρεάν εργαλείο που στοχεύει στη δοκιμή υπηρεσιών Web. Το SoapUI είναι ικανό να κάνει λειτουργικές δοκιμές, δοκιμές απόδοσης και δοκιμές φόρτωσης
- Apache Jmeter: Αυτό είναι επίσης ένα βοηθητικό πρόγραμμα OPEN SOURCE που χρησιμοποιείται για την ανάλυση της απόδοσης της επίκλησης SOAP.
- JProfiler: Αυτό χρησιμοποιείται για να σταματήσει ή να ανιχνευθεί η διαρροή μνήμης, να βρεθούν σημεία συμφόρησης στην απόδοση κ.λπ.
- Δοκιμή σέρβις HP: Αυτό είναι ενσωματωμένο στο HP QC. Αυτό είναι ένα λειτουργικό εργαλείο δοκιμών, το οποίο υποστηρίζει επίσης UI και κοινόχρηστες δοκιμές υπηρεσιών
Μέσα από αυτό το άρθρο, καταλάβαμε την ιδιαιτερότητα του μοντέλου. Αυτό είναι πολύ διαφορετικό από το παλιό μοντέλο και το άρθρο δίνει μια καλή ιδέα για αυτό. Αυτό το άρθρο ρίχνει επίσης λίγο φως στη διαδικασία SOA και στους τρόπους για να προχωρήσετε στη δοκιμή.
Σχετικά με τον Συγγραφέα: Αυτή είναι μια θέση επισκεπτών από το Subhasis. Εργάζεται ως επικεφαλής της ομάδας με πάνω από 8 χρόνια εταιρικής εμπειρίας σε εταιρείες IT Fortune 500.
Δημοσιεύστε τα ερωτήματα / σχόλια που σχετίζονται με τη δοκιμή SOA παρακάτω.
Τα καλύτερα!
Συνιστώμενη ανάγνωση
- Τα καλύτερα εργαλεία δοκιμής λογισμικού 2021 (QA Test Automation Tools)
- Testing Primer eBook Λήψη
- Εγχειρίδιο καταστροφικών δοκιμών και μη καταστροφικών δοκιμών
- Λειτουργική δοκιμή εναντίον μη λειτουργική δοκιμή
- Εκμάθηση έκλειψης σε βάθος για αρχάριους
- Κορυφαία 15 εργαλεία δοκιμής SOA για δοκιμαστές
- Εκμάθηση Pairwise Test ή All-Pairs Testing με εργαλεία και παραδείγματα
- Οδηγός εργαλείων δοκιμής προσβασιμότητας WAVE