using json interface testing
Χρήση του JSON για δοκιμή διασύνδεσης:
Ο έλεγχος διεπαφής επαληθεύει την επικοινωνία μεταξύ δύο διαφορετικών συστημάτων. Εκτελείται στην υπό δοκιμή εφαρμογή για να εξακριβωθεί εάν η επικοινωνία μεταξύ δύο δικτύων εκτελείται σωστά.
Μια διεπαφή είναι βασικά η σύνδεση μεταξύ δύο συστημάτων λογισμικού και ο έλεγχος ότι η σύνδεση για τη μεταφορά δεδομένων ονομάζεται Δοκιμή διεπαφής. Η διεπαφή καλύπτει ένα ευρύ φάσμα υπηρεσιών στον πραγματικό κόσμο, μπορεί να χρησιμοποιηθεί για αναφορά σε υπηρεσία Web, API κ.λπ.
Μια διεπαφή περιέχει ένα σύνολο κανόνων, μηνυμάτων, εντολών κ.λπ. που διευκολύνει την επικοινωνία μεταξύ δύο συστημάτων.
Αυτή η δοκιμή επικεντρώνεται κυρίως στη δοκιμή δύο μεγάλων τμημάτων:
- Επικοινωνία βάσης δεδομένων και διακομιστή εφαρμογών
- Επικοινωνία διακομιστή Ιστού και Εφαρμογών
Διεξάγεται δοκιμή διεπαφής για την αξιολόγηση των προαναφερθέντων σεναρίων για να επιβεβαιωθεί εάν τα στοιχεία μεταβιβάζουν σωστά το στοιχείο ελέγχου και τα δεδομένα μεταξύ τους σωστά. Επιβεβαιώνει επίσης την αλληλεπίδραση μεταξύ διαφορετικών ενοτήτων.
Τι θα μάθετε:
- Γιατί εκτελείται η δοκιμή διασύνδεσης;
- Πώς εκτελείται;
- Διαφορά μεταξύ δοκιμών διασύνδεσης και δοκιμών ολοκλήρωσης
- Επιχειρηματικό σενάριο
- Δοκιμή περιβάλλοντος
- Ξεκινώντας τη δοκιμή σας
- συμπέρασμα
- Συνιστώμενη ανάγνωση
Γιατί εκτελείται η δοκιμή διασύνδεσης;
Εκτελείται για να εξασφαλίσει:
- Εάν η επικοινωνία μεταξύ των συστημάτων εκτελείται σωστά.
- Όλο το λογισμικό και το υλικό που χρησιμοποιούνται στο σύστημα λειτουργούν σωστά.
- Όλα τα έγγραφα που συνδέονται με την επικοινωνία είναι διαθέσιμα σε όλες τις ολοκληρωμένες πλατφόρμες.
- Οι απαιτήσεις ασφάλειας και κρυπτογράφησης τηρούν την επικοινωνία μεταξύ των συστημάτων.
- Τα ενσωματωμένα στοιχεία μπορούν να χειριστούν αστοχίες δικτύου και απώλεια επικοινωνίας.
Βρέθηκαν τύποι ελαττωμάτων
Τα περισσότερα από τα ελαττώματα που εντοπίστηκαν στη δοκιμή διεπαφής χρήστη οφείλονται σε λανθασμένη χαρτογράφηση των δεδομένων μεταξύ των συστημάτων. Ως εκ τούτου, τα περισσότερα από τα σφάλματα μπορούν βασικά να ταξινομηθούν στις ακόλουθες κατηγορίες.
- Ασυνεπής μετάδοση δεδομένων μεταξύ των δύο συστημάτων.
- Ένα από τα συστήματα παρερμηνεύει τη μετάδοση δεδομένων από άλλο σύστημα.
- Το κανάλι μετάδοσης ή η διεπαφή μεταξύ των δύο συστημάτων αποτυγχάνουν και αυτό περιορίζει τη μεταφορά δεδομένων μεταξύ των συστημάτων προκαλώντας έτσι την αποτυχία ολόκληρης της διεπαφής.
Πώς εκτελείται;
Μπορεί να κατηγοριοποιηθεί κυρίως στις ακόλουθες φάσεις:
- Οι διεπαφές μπορούν να δοκιμαστούν μεμονωμένα κατά τη διάρκεια δοκιμή συστήματος . Αυτός ο τύπος δοκιμών πραγματοποιείται κυρίως με σύστημα στέλεχος ή πλαστό. Ένα πλαστό σύστημα ή στέλεχος πλαστοπροσωπεί τη συμπεριφορά ολόκληρης της αλληλεπίδρασης του συστήματος.
- Μια άλλη περίπτωση όπου πραγματοποιείται ο έλεγχος διασύνδεσης είναι ένας κόμβος όπου δύο συστήματα επικοινωνούν μεταξύ τους.
- Ως εκ τούτου, εξετάζουμε εάν τα δεδομένα που αποστέλλονται από ένα σύστημα έχουν χαρτογραφηθεί σωστά και έχουν εισαχθεί σε άλλο σύστημα ή όχι. Εκτός από την εισαγωγή δεδομένων, ελέγξουμε επίσης την ακεραιότητα των δεδομένων, δηλαδή τα δεδομένα, όταν εισάγονται σε άλλο σύστημα, δεν έχουν υποστεί χειρισμό ή τροποποίηση κ.λπ.
- Ο έλεγχος μπορεί επίσης να πραγματοποιηθεί όταν ένα σύστημα μεταδίδει δεδομένα σε άλλη βάση δεδομένων εφαρμογών. Εδώ, θα ελέγξουμε εάν τα δεδομένα από ένα σύστημα έχουν εισαχθεί σωστά σε μια δεδομένη στήλη του δεδομένου πίνακα με βάση τη χαρτογράφηση. Θα δοκιμάσουμε επίσης την ακεραιότητα των δεδομένων και τη συνέπεια των δεδομένων σε σχέση με το σύστημα προέλευσης.
Σε όλα αυτά τα σενάρια δοκιμών, η δοκιμή διεπαφής εκτελείται με βάση τις απαιτήσεις της επιχείρησης και τους κανόνες ροής της επιχείρησης.
Διαφορά μεταξύ δοκιμών διασύνδεσης και δοκιμών ολοκλήρωσης
Απαιτείται επαλήθευση και επικύρωση της λειτουργίας από άκρο σε άκρο των στοιχείων που συνδέονται μεταξύ τους Δοκιμή ολοκλήρωσης ή πιο δημοφιλής ως δοκιμή ολοκλήρωσης συστήματος. Ο έλεγχος ενοποίησης επικυρώνεται κυρίως εάν δύο ή περισσότερα ενσωματωμένα συστήματα λειτουργούν άψογα μαζί ή όχι.
Δοκιμές Διεπαφή Από την άλλη πλευρά επικεντρώνεται ουσιαστικά στο κανάλι σύνδεσης μεταξύ των δύο συστημάτων. Το κανάλι σύνδεσης μεταξύ δύο ή περισσότερων συστημάτων ονομάζεται διασύνδεση. Ο έλεγχος αυτού του καναλιού σύνδεσης ονομάζεται Interface Testing. Οι περισσότερες από τις διεπαφές είναι είτε API είτε υπηρεσίες web. Δεν διαθέτει διεπαφή χρήστη, αλλά λαμβάνει μια εισαγωγή και παρουσιάζει στον χρήστη μια έξοδο.
Για παράδειγμα
Στο παραπάνω παράδειγμα, ο ιστότοπος και η βάση δεδομένων μοιράζονται μια διεπαφή για τη μετάδοση των πληροφοριών σύνδεσης, δηλαδή όνομα χρήστη και κωδικό πρόσβασης.
Η διεπαφή χρησιμοποιεί την υπηρεσία ιστού για να στείλει τις πληροφορίες σύνδεσης στη βάση δεδομένων, η οποία με τη σειρά της επικυρώνει την αυθεντικότητα του εισερχόμενου μηνύματος (όνομα χρήστη και κωδικός πρόσβασης) και επιστρέφει την τιμή ως αληθινή εάν και το όνομα χρήστη και ο κωδικός πρόσβασης ταιριάζουν με την εγγραφή που υπάρχει στη βάση δεδομένων ή ψευδές σε περίπτωση που κάποιο από αυτά ή και το όνομα χρήστη και ο κωδικός πρόσβασης δεν ταιριάζουν με τα δεδομένα που υπάρχουν στο εσωτερικό.
Ας συζητήσουμε το παράδειγμα δοκιμής διεπαφής:
Ας υποθέσουμε ότι έχουμε μια εφαρμογή όπου έχουμε διαφορετικές βάσεις δεδομένων που αλληλεπιδρούν μεταξύ τους.
Σε αυτό παράδειγμα , θα εξετάσουμε δύο αλληλεπιδράσεις βάσης δεδομένων μέσω ενός καναλιού διασύνδεσης.
Ας υποθέσουμε ότι υπάρχουν δύο βάσεις δεδομένων ή εφαρμογή, η βάση δεδομένων Α και Β. Το 'A' μεταφέρει ορισμένα δεδομένα στο 'B', το οποίο στη συνέχεια χρησιμοποιείται από το B για να εκτελέσει κάποια λειτουργία. Αφού εκτελέσετε μια συγκεκριμένη λειτουργία στα εισερχόμενα δεδομένα, Β εισάγει αυτά τα δεδομένα στη βάση δεδομένων και δημιουργεί μια έξοδο JSON για επιβεβαίωση με τη λίστα των ενημερωμένων δεδομένων και τα στέλνει πίσω στο A.
Τόσο το Α όσο και το Β χρησιμοποιούν κανάλι διεπαφής για επικοινωνία μεταξύ τους.
Επιχειρηματικό σενάριο
Το 'A' περιέχει δεδομένα υπαλλήλων για όλους τους υπαλλήλους που ανήκουν στο τμήμα οικονομικών.
Τα δεδομένα πρέπει να μεταφερθούν στο 'B ' σε καθημερινή βάση. Το 'B' περιέχει δεδομένα σχετικά με τις γενικές λεπτομέρειες των εργαζομένων Όλα τα δεδομένα από το 'A' πρέπει να μεταφερθούν σε έναν συγκεκριμένο πίνακα και στήλη 'B'. Εκτός από τα δεδομένα εισαγωγής, το 'B' πρέπει επίσης να ταξινομήσει και να οργανώσει δεδομένα. Πρέπει επίσης να βεβαιωθεί εάν τα δεδομένα έχουν εισαχθεί έναντι του σωστού υπαλλήλου.
Μόλις εισαχθούν τα δεδομένα στο σύστημα, το 'B' πρέπει να στείλει μια έξοδο JSON για να επιβεβαιώσει εάν τα δεδομένα έχουν εισαχθεί στη βάση δεδομένων.
Σε περίπτωση ασυμφωνίας στο σχήμα JSON ή ελλείποντα δεδομένα, το 'B' δεν θα επεξεργαστεί τα δεδομένα και θα στείλει ένα μήνυμα απόρριψης JSON με τον λόγο απόρριψης.
Δοκιμή περιβάλλοντος
Για να δοκιμάσουμε ένα σενάριο σαν αυτό, θα χρειαστεί ένα δοκιμαστικό στέλεχος για να μιμηθεί τη βάση δεδομένων 'A'. Ο προγραμματιστής μπορεί να παρέχει μια τοποθεσία όπου μπορείτε είτε να απορρίψετε το δοκιμαστικό JSON είτε ένα πλαστό UI και να επικολλήσετε τα δεδομένα σας JSON και να καλέσετε την επεξεργασία μέσω της διεπαφής. Για σκοπούς δοκιμής, μπορούμε επίσης να έχουμε μια θέση εξόδου όπου μπορούμε να λάβουμε την επιβεβαίωση JSON από το 'B'.
Στο δικό μας παράδειγμα , θα χρησιμοποιήσουμε μια διαδρομή φακέλου όπου θα δοκιμάσουμε το JSON, η υπηρεσία θα συνεχίζει να σπρώχνει συνεχώς τη θέση για το αρχείο JSON. Μόλις το αρχείο είναι παρόν, η υπηρεσία θα πάρει το αρχείο και θα το στείλει στο 'B' μέσω της διεπαφής. Μόλις παραληφθεί το αρχείο, θα διαγραφεί από την τοποθεσία παραλαβής.
Ξεκινώντας τη δοκιμή σας
Μόλις ρυθμιστεί το περιβάλλον δοκιμής, το επόμενο βήμα είναι να δημιουργήσετε τα δεδομένα δοκιμής.
Κατά τη δημιουργία δεδομένων δοκιμής (διαβάστε το τεστ JSON) θα πρέπει να έχουμε κατά νου μερικά πράγματα:
- Ακολουθήστε τους επιχειρηματικούς κανόνες.
- Βεβαιωθείτε ότι υπάρχουν τα υποχρεωτικά πεδία.
- Αλλάξτε την τιμή των πεδίων σύμφωνα με τους επιχειρηματικούς κανόνες για κάθε δοκιμή.
- Βεβαιωθείτε ότι το σχήμα JSON είναι στη σωστή μορφή.
- Βεβαιωθείτε ότι τηρήθηκε η ονοματολογία για το όνομα αρχείου JSON.
Ας ρίξουμε μια ματιά στο δείγμα δοκιμής JSON που θα χρησιμοποιήσουμε για τη δοκιμή:
{ 'employeeID ': 2569875, 'LastName': “Jackson”, 'baseSalary': 2569, 'DesignationCode':'P102', “Expenditure”:{ 'Month':“Feb”, 'Year': 2017, 'Official':560, 'Others”:0, } }
Ξεκινήστε τη δοκιμή σας
Αφού δημιουργήσετε το δοκιμαστικό αρχείο JSON, ρίξτε το στη θέση παραλαβής. Η υπηρεσία θα το παραλάβει και θα το δημοσιεύσει στη βάση δεδομένων Β.
Σενάρια προς δοκιμή:
Μπορεί να υπάρχουν πολλά σενάρια που πρέπει να δοκιμαστούν για αυτό το παράδειγμα όπως:
- Συνεργασία με την υπηρεσία Ιστού για αποστολή και λήψη δεδομένων.
- Ακεραιότητα δεδομένων για τα δεδομένα εισαγωγής. Αυτό μπορεί να επικυρωθεί μέσω ερωτημάτων πινάκων και στηλών στη βάση δεδομένων Β για τα δεδομένα που εισάγονται μέσω της δοκιμής JSON.
- Αρνητικά σενάρια.
Αρχικά, θα ελέγξουμε εάν το δοκιμαστικό αρχείο JSON έχει παραληφθεί από την τοποθεσία ή δεν υπάρχει στην τοποθεσία. Αυτό θα επικυρώσει τη λειτουργία της υπηρεσίας. Στη συνέχεια, θα μεταβούμε στο φάκελο εξόδου για να δούμε την έξοδο JSON. Παρουσία εξόδου Το JSON επικυρώνει εάν τα δεδομένα εισόδου έχουν σταλεί στη βάση δεδομένων Β και έχει ληφθεί επιβεβαίωση για το ίδιο.
Το επόμενο μέρος της δοκιμής περιλαμβάνει την επικύρωση των δεδομένων που έχουν εισαχθεί στη βάση δεδομένων.
Στην παραπάνω δοκιμή, θα επικυρώσουμε εάν τα δεδομένα που αποστέλλονται μέσω της δοκιμής JSON έχουν εισαχθεί σωστά στη βάση δεδομένων. Θα επικυρώσουμε την ακεραιότητα των δεδομένων, τη συνοχή των δεδομένων και την εισαγωγή δεδομένων. Θα πρέπει να ζητήσουμε τη βάση δεδομένων Β για τη δεδομένη στήλη σε έναν συγκεκριμένο πίνακα για να επικυρώσουμε εάν τα δεδομένα έχουν εισαχθεί σωστά στον πίνακα.
Ας υποθέσουμε ότι έχουμε έναν πίνακα EmpDetails όπου πρέπει να εισαχθούν τα δεδομένα. Έτσι, θα εκτελέσουμε ένα ερώτημα για την επικύρωση των δεδομένων.
Το ερώτημα θα είναι κάπως έτσι:
SELECT employeeID, LastName, baseSalary, DesignationCode, Month, Year, Official, Others FROM EmpDetails Where employeeID = 2569875;
Εδώ, θα χρησιμοποιήσουμε το karyawanID ως το κύριο κλειδί για την αναζήτηση δεδομένων στον πίνακα EmpDetails. Θα υποβάλουμε ερώτημα χρησιμοποιώντας όλο το όνομα της στήλης στην οποία έχουν εισαχθεί τα δεδομένα. Στη συνέχεια, τα δεδομένα στο όνομα της στήλης μπορούν να επικυρωθούν με τα δεδομένα που αποστέλλονται μέσω του JSON.
Στην παραπάνω περίπτωση, τα δεδομένα από το JSON αποθηκεύονται σε περισσότερους από έναν πίνακες στη βάση δεδομένων, επομένως μπορείτε να χρησιμοποιήσετε το SQL JOINS για τη λήψη όλων των επιθυμητών δεδομένων.
Το τρίτο βήμα στη δοκιμή θα είναι να δοκιμάσουμε τα αρνητικά σενάρια.
Μερικά από τα αρνητικά σενάρια που μπορούν να ελεγχθούν είναι:
- Η συμπεριφορά του συστήματος όταν λανθασμένα δεδομένα τροφοδοτούνται μέσω JSON.
- Όταν το JSON έχει λάθος σχήμα ή δομή.
- Όταν λείπει το επεξεργασμένο JSON το πρωτεύον κλειδί ή τυχόν υποχρεωτικά πεδία.
- Η ονοματολογία του αρχείου JSON δεν είναι έγκυρη.
Σε όλες αυτές τις περιπτώσεις, το σύστημα πρέπει να είναι σε θέση να χειριστεί αυτά τα σενάρια και δεν πρέπει να εισαχθούν δεδομένα στο σύστημα σύμφωνα με τον επιχειρηματικό κανόνα.
συμπέρασμα
Το κανάλι σύνδεσης μεταξύ δύο συστημάτων μέσω των οποίων μεταδίδονται δεδομένα ονομάζεται διασύνδεση και η δοκιμή διασύνδεσης λειτουργεί κυρίως γύρω από τη δοκιμή αυτών των συνδέσεων. Οι περισσότερες από τις διεπαφές χρησιμοποιούν την υπηρεσία Web ή API. Δεν έχει πάντα διεπαφή χρήστη, αλλά δέχεται είσοδο και παρέχει έξοδο.
καλύτερη εφαρμογή κατάσκοπων για κινητά για Android
Όντας μία από τις πιο ευρέως χρησιμοποιούμενες μορφές μεταφοράς δεδομένων, το JSON μπορεί να χρησιμοποιηθεί για τη μεταφορά δεδομένων διεπαφής.
Ένας δοκιμαστής πρέπει να έχει βασικές γνώσεις δομής JSON για τη δημιουργία δεδομένων δοκιμής (με τη μορφή JSON) και για την ανάγνωση δεδομένων εξόδου από το σύστημα. Ένας δοκιμαστής πρέπει επίσης να είναι καλά εξοικειωμένος με τη χαρτογράφηση μεταξύ των κλειδιών JSON και της στήλης πίνακα βάσης δεδομένων.
Οποιοσδήποτε υπεύθυνος δοκιμών θέλει να εργαστεί στη δοκιμή διασύνδεσης θα πρέπει να έχει σαφείς γνώσεις σχετικά με τις επιχειρηματικές οδηγίες και τους κανόνες μιας εφαρμογής. Ένας δοκιμαστής θα πρέπει επίσης να έχει επαρκείς γνώσεις σχετικά με τη βάση δεδομένων και θα πρέπει να είναι σε θέση να γράφει απλά ερωτήματα SQL.
Για οποιαδήποτε ερώτηση ή διευκρίνιση επικοινωνήστε μαζί μας στην ενότητα σχολίων.
Εκμάθηση # 5: Ερωτήσεις συνέντευξης JSON
Συνιστώμενη ανάγνωση
- Τα καλύτερα εργαλεία δοκιμής λογισμικού 2021 (QA Test Automation Tools)
- Δοκιμή βάσης δεδομένων με JMeter
- Testing Primer eBook Λήψη
- 40+ καλύτερα εργαλεία δοκιμής βάσης δεδομένων - Δημοφιλείς λύσεις δοκιμής δεδομένων
- Οδηγός δοκιμών GUI: Ένας πλήρης οδηγός δοκιμών διεπαφής χρήστη (UI)
- Μια απλή προσέγγιση για XML στη δοκιμή βάσεων δεδομένων
- Εγχειρίδιο δοκιμών αποθήκης δεδομένων δοκιμών ETL (ένας πλήρης οδηγός)
- Τι είναι το Interface Testing; Μάθετε τους τύπους, τη στρατηγική και τα εργαλεία του