Τι είναι το Configuration Testing; Παραδείγματα Δοκιμαστικών Υποθέσεων

⚡ Έξυπνη Σύνοψη

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

  • 🧩 Πεδίο εφαρμογής: OperaΤα συστήματα ting, τα προγράμματα περιήγησης, οι εκδόσεις βάσεων δεδομένων, τα προγράμματα οδήγησης, η μνήμη και τα περιφερειακά υπολογίζονται όλα ως διαμορφώσεις.
  • 📐 Δύο τύποι: Οι δοκιμές διαμόρφωσης λογισμικού καλύπτουν πλατφόρμες και ενημερώσεις, ενώ οι δοκιμές διαμόρφωσης υλικού καλύπτουν τις συνδεδεμένες συσκευές.
  • 🗂️ Πρώτα ο πίνακας: Δημιουργήστε έναν πίνακα συνδυασμών και, στη συνέχεια, ιεραρχήστε τον κατά προτεραιότητα, επειδή η εξαντλητική κάλυψη είναι απρόσιτη.
  • Εικονικές μηχανές: Τα στιγμιότυπα αντικαθιστούν τους επαναλαμβανόμενους κύκλους εγκατάστασης και απεγκατάστασης σε μηχανήματα φυσικών δοκιμών.
  • 🏦 Λειτουργικό παράδειγμα: Μια τραπεζική εφαρμογή και τα μοντέλα μηχανών καταμέτρησης χαρτονομισμάτων που τη συνοδεύουν απεικονίζουν περιπτώσεις δοκιμών υλικού.
  • 🚨 Σκόπιμη αποτυχία: Η σκόπιμη κατάργηση μιας προϋπόθεσης αποκαλύπτει ελαττώματα που κρύβει ένα πλήρως εξοπλισμένο εργαστήριο.

Δοκιμή διαμόρφωσης σε συνδυασμούς λογισμικού και υλικού

Δοκιμή διαμόρφωσης

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

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

Παράδειγμα δοκιμής διαμόρφωσης

Θεωρήστε μια εφαρμογή για επιτραπέζιους υπολογιστές ως ένα λειτουργικό παράδειγμα.

Οι εφαρμογές για υπολογιστές συνήθως κατασκευάζονται σε μορφή 2 ή 3 επιπέδων. Πάρτε μια εφαρμογή για υπολογιστές 3 επιπέδων που αναπτύχθηκε σε ASP.NET, που αποτελείται από έναν Client, έναν Business Logic Server και έναν Database Server, όπου κάθε στοιχείο υποστηρίζει τις πλατφόρμες που αναφέρονται παρακάτω.

  • Πλατφόρμα πελατών – Windows XP, Windows 7, Windows 8, και ούτω καθεξής
  • Πλατφόρμα διακομιστή – Windows 2008 server, Windows Διακομιστής 2008 R2, Windows Διακομιστή 2012 R2
  • Βάση δεδομένων – SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 και ούτω καθεξής

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

Ο έλεγχος διαμόρφωσης δεν περιορίζεται στο λογισμικό. Ισχύει και για το υλικό, γι' αυτό και η πλευρά του υλικού ονομάζεται έλεγχος διαμόρφωσης υλικού: εκτυπωτές, σαρωτές, κάμερες web και παρόμοιες συσκευές που πρέπει να υποστηρίζει η υπό δοκιμή εφαρμογή. Ο παρακάτω πίνακας δείχνει πώς διατάσσονται αυτοί οι συνδυασμοί πριν ξεκινήσει η εκτέλεση της δοκιμής.

Πίνακας δοκιμών διαμόρφωσης συνδυασμών πελάτη, διακομιστή και βάσης δεδομένων

Προαπαιτούμενα για τη δοκιμή διαμόρφωσης

Πριν ξεκινήσει η δοκιμή διαμόρφωσης σε οποιοδήποτε έργο, πρέπει να υπάρχουν τρεις προϋποθέσεις.

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

Στόχοι της δοκιμής διαμόρφωσης

Η δοκιμή διαμόρφωσης έχει ως στόχο να επιτύχει τα ακόλουθα.

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

Πώς να κάνετε τη δοκιμή διαμόρφωσης

Η στρατηγική εξαρτάται από το ποιος από τους δύο τύπους δοκιμών διαμόρφωσης εμπίπτει στο πεδίο εφαρμογής.

  • Δοκιμή διαμόρφωσης λογισμικού
  • Δοκιμή διαμόρφωσης υλικού

Δοκιμή διαμόρφωσης λογισμικού

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

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

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

Η δοκιμή διαμόρφωσης λογισμικού μπορεί συνήθως να ξεκινήσει όταν

  • Οι απαιτήσεις διαμόρφωσης που θα δοκιμαστούν καθορίζονται
  • The περιβάλλον δοκιμής είναι έτοιμο
  • Η ομάδα δοκιμών είναι εκπαιδευμένη σε δοκιμές διαμόρφωσης
  • Η έκδοση που κυκλοφόρησε έχει περάσει με επιτυχία τις δοκιμές μονάδας και ενσωμάτωσης

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

Παράδειγμα:

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

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

Η εφαρμογή τραπεζικής συναλλαγής αποτυγχάνει σε έναν υπολογιστή-πελάτη με ελλιπείς προϋποθέσεις

Δοκιμή διαμόρφωσης υλικού

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

Κάθε φορά που κυκλοφορεί μια έκδοση, το λογισμικό εγκαθίσταται σε κάθε ένα από αυτά τα μηχανήματα και η σουίτα δοκιμών εκτελείται σε κάθε ένα, για να επιβεβαιωθεί ότι η εφαρμογή λειτουργεί με τη συνδεδεμένη συσκευή.

Αυτή η εργασία απαιτεί σημαντική προσπάθεια: εγκατάσταση του λογισμικού σε κάθε μηχάνημα, σύνδεση του υλικού και, στη συνέχεια, χειροκίνητη εκτέλεση της σουίτας ή αυτοματοποίησή της πρώτα.

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

Δείγματα Δοκιμαστικών Υποθέσεων

Σκεφτείτε ένα τραπεζικό σενάριο που ελέγχεται για συμβατότητα υλικού. Μια τραπεζική εφαρμογή που είναι συνδεδεμένη με μια μηχανή καταμέτρησης χαρτονομισμάτων πρέπει να λειτουργεί με πολλά μοντέλα, όπως Rolex, Strob, Maxsell και StoK.

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

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

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

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

Οι δοκιμές διαμόρφωσης ποικίλλουν ανάλογα με την υποστηριζόμενη ρύθμιση του προϊόντος — λειτουργικό σύστημα, έκδοση βάσης δεδομένων, συνδεδεμένη συσκευή — και εκτελείται ξανά η σουίτα. Οι δοκιμές συμβατότητας ελέγχουν ότι το προϊόν συνυπάρχει με εξωτερικό λογισμικό, πλατφόρμες και προγράμματα περιήγησης με τα οποία πρέπει να λειτουργεί παράλληλα.

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

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

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

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

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

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

Ναι. Σχεδιάζει παραμετροποιημένα scaffolding δοκιμών, σενάρια παροχής περιβάλλοντος και ορισμούς εργασιών CI που εκτελούν μία σουίτα σε πολλές διαμορφώσεις. Ο ίδιος ο πίνακας πρέπει να προέρχεται από τη λίστα υποστηριζόμενων πλατφορμών.

Συνοψίστε αυτήν την ανάρτηση με: