Τι είναι το Configuration Testing; Παραδείγματα Δοκιμαστικών Υποθέσεων
Δοκιμή διαμόρφωσης
Δοκιμή διαμόρφωσης είναι μια τεχνική δοκιμής λογισμικού κατά την οποία η εφαρμογή λογισμικού δοκιμάζεται με πολλαπλούς συνδυασμούς λογισμικού και υλικού προκειμένου να αξιολογηθούν οι λειτουργικές απαιτήσεις και να βρεθούν οι βέλτιστες διαμορφώσεις κάτω από τις οποίες λειτουργεί η εφαρμογή λογισμικού χωρίς ελαττώματα ή ελαττώματα.
Όπως συζητήθηκε παραπάνω, το Configuration Testing είναι μια δοκιμή λογισμικού όπου η υπό δοκιμή εφαρμογή πρέπει να δοκιμαστεί χρησιμοποιώντας πολλαπλούς συνδυασμούς Λογισμικού και Υλικού.
Παράδειγμα δοκιμής διαμόρφωσης
Ας το καταλάβουμε αυτό με ένα παράδειγμα εφαρμογής επιφάνειας εργασίας:
Γενικά, οι εφαρμογές Desktop θα είναι 2 επιπέδων ή 3 επιπέδων, εδώ θα εξετάσουμε μια εφαρμογή Desktop 3 επιπέδων που έχει αναπτυχθεί χρησιμοποιώντας Asp.Net και αποτελείται από Client, Business Logic Server και Database Server όπου κάθε στοιχείο υποστηρίζει τις παρακάτω πλατφόρμες.
- Πλατφόρμα πελατών – Windows XP, Windows7 OS, windows 8 OS κ.λπ
- Πλατφόρμα διακομιστή – Windows Διακομιστής 2008 R2,Windows Διακομιστής 2008 R2, Windows Διακομιστής 2012R2
- Βάση δεδομένων – SQL Sever 2008, SQL Διακομιστής 2008R2, SQL Server 2012, κ.λπ.
Ένας ελεγκτής πρέπει να δοκιμάσει τον συνδυασμό πελάτη, διακομιστή και βάσης δεδομένων με συνδυασμούς των προαναφερόμενων πλατφορμών και εκδόσεων βάσης δεδομένων για να διασφαλίσει ότι η εφαρμογή λειτουργεί σωστά και ότι δεν αποτυγχάνει.
Η δοκιμή διαμόρφωσης δεν περιορίζεται μόνο στο Λογισμικό, αλλά ισχύει και για Υλικό, γι' αυτό αναφέρεται και ως δοκιμή διαμόρφωσης υλικού, όπου δοκιμάζουμε διαφορετικές συσκευές υλικού, όπως εκτυπωτές, σαρωτές, κάμερες Ιστού κ.λπ. που υποστηρίζουν την υπό δοκιμή εφαρμογή.
Προαπαιτούμενα για τη δοκιμή διαμόρφωσης
Για οποιοδήποτε έργο πριν ξεκινήσουμε με τη δοκιμή διαμόρφωσης, πρέπει να ακολουθήσουμε ορισμένες προϋποθέσεις
- Δημιουργία matrix που αποτελείται από διάφορους συνδυασμούς διαμορφώσεων λογισμικού και υλικού
- Δίνοντας προτεραιότητα στις διαμορφώσεις, καθώς είναι δύσκολο να δοκιμαστούν όλες οι διαμορφώσεις
- Δοκιμή κάθε διαμόρφωσης με βάση την ιεράρχηση προτεραιοτήτων.
Στόχοι της δοκιμής διαμόρφωσης
Οι στόχοι της δοκιμής διαμόρφωσης είναι να
- Επικύρωση της εφαρμογής για να προσδιοριστεί εάν πληροί τις απαιτήσεις διαμόρφωσης
- Μη αυτόματη πρόκληση αστοχιών που βοηθούν στον εντοπισμό των ελαττωμάτων που δεν εντοπίζονται αποτελεσματικά κατά τη δοκιμή (π.χ. αλλαγή των τοπικών ρυθμίσεων του συστήματος όπως Ζώνη ώρας, Γλώσσα, μορφές ώρας ημερομηνίας κ.λπ.)
- Προσδιορίστε τη βέλτιστη διαμόρφωση της υπό δοκιμή εφαρμογής.
- Ανάλυση της απόδοσης του συστήματος προσθέτοντας ή τροποποιώντας τους πόρους υλικού όπως Load Balancers, αύξηση ή μείωση του μεγέθους της μνήμης, σύνδεση διαφόρων μοντέλων εκτυπωτών κ.λπ.
- Ανάλυση της αποδοτικότητας του συστήματος με βάση την ιεράρχηση, πόσο αποτελεσματικά πραγματοποιήθηκαν οι δοκιμές με τους διαθέσιμους πόρους για την επίτευξη της βέλτιστης διαμόρφωσης του συστήματος.
- Επαλήθευση του συστήματος σε ένα γεωγραφικά κατανεμημένο περιβάλλον για να επαληθευτεί πόσο αποτελεσματικά λειτουργεί το σύστημα. Για παράδειγμα: Διακομιστής σε διαφορετική τοποθεσία και πελάτες σε διαφορετική τοποθεσία, το σύστημα θα πρέπει να λειτουργεί καλά ανεξάρτητα από τις ρυθμίσεις συστήματος.
- Επαλήθευση της ευκολίας αναπαραγωγής των σφαλμάτων, ανεξάρτητα από τις αλλαγές διαμόρφωσης.
- Διασφάλιση πόσο ανιχνεύσιμα είναι τα στοιχεία της εφαρμογής τεκμηριώνοντας και διατηρώντας σωστά τις εκδόσεις που είναι εύκολα αναγνωρίσιμες.
- Επαλήθευση πόσο διαχειρίσιμα είναι τα στοιχεία της εφαρμογής σε όλη την έκταση κύκλος ζωής ανάπτυξης λογισμικού.
Πώς να κάνετε τη δοκιμή διαμόρφωσης
Σε αυτή την ενότητα, θα συζητήσουμε τη στρατηγική που πρέπει να ακολουθηθεί για τους τύπους δοκιμών διαμόρφωσης και υπάρχουν δύο τύποι δοκιμών διαμόρφωσης όπως αναφέρονται παρακάτω
- Δοκιμή διαμόρφωσης λογισμικού
- Δοκιμή διαμόρφωσης υλικού
Δοκιμή διαμόρφωσης λογισμικού
Η δοκιμή διαμόρφωσης λογισμικού δοκιμάζει την υπό δοκιμή Εφαρμογή με πολλαπλά λειτουργικά συστήματα, διαφορετικές ενημερώσεις λογισμικού κ.λπ. Η δοκιμή διαμόρφωσης λογισμικού είναι πολύ χρονοβόρα, καθώς απαιτείται χρόνος για την εγκατάσταση και την απεγκατάσταση διαφορετικού λογισμικού που χρησιμοποιείται για τη δοκιμή.
Μία από τις προσεγγίσεις που ακολουθείται για τον έλεγχο της διαμόρφωσης του λογισμικού είναι η δοκιμή σε εικονικές μηχανές. Το Virtual Machine είναι ένα περιβάλλον που είναι εγκατεστημένο σε λογισμικό και λειτουργεί σαν Φυσικό Υλικό και οι χρήστες θα έχουν την ίδια αίσθηση με ένα Physical Machine. Το Virtual Machines προσομοιώνει διαμορφώσεις σε πραγματικό χρόνο.
Αντί να εγκαταστήσετε και να απεγκαταστήσετε το λογισμικό σε πολλαπλές φυσικές μηχανές που είναι χρονοβόρο, είναι πάντα καλύτερο να εγκαταστήσετε την εφαρμογή/λογισμικό στην εικονική μηχανή και να συνεχίσετε τη δοκιμή. Αυτή η διαδικασία μπορεί να πραγματοποιηθεί με πολλαπλές εικονικές μηχανές, που απλοποιεί τη δουλειά ενός δοκιμαστή
Η δοκιμή διαμόρφωσης λογισμικού μπορεί συνήθως να ξεκινήσει όταν
- Καθορίζονται οι απαιτήσεις διαμόρφωσης προς δοκιμή
- Το περιβάλλον δοκιμής είναι έτοιμο
- Η ομάδα δοκιμών είναι καλά εκπαιδευμένη στις δοκιμές διαμόρφωσης
- Η έκδοση που κυκλοφόρησε είναι μονάδα και η δοκιμή ενσωμάτωσης πέρασε
Τυπικός Στρατηγική δοκιμής που ακολουθείται για τη δοκιμή της δοκιμής διαμόρφωσης λογισμικού είναι η εκτέλεση της σουίτας λειτουργικών δοκιμών σε πολλαπλές διαμορφώσεις λογισμικού για να επαληθευτεί εάν η υπό δοκιμή εφαρμογή λειτουργεί όπως επιθυμείτε χωρίς ελαττώματα ή σφάλματα.
Μια άλλη στρατηγική είναι να διασφαλίσετε ότι το σύστημα λειτουργεί καλά αποτυγχάνοντας χειροκίνητα τις περιπτώσεις δοκιμής και επαληθεύοντας την αποτελεσματικότητα.
Παράδειγμα:
Ας πούμε ότι υπάρχει μια τραπεζική εφαρμογή, η οποία πρέπει να ελεγχθεί για τη συμβατότητά της σε πολλά προγράμματα περιήγησης όταν η εφαρμογή φιλοξενείται σε περιβάλλον όπου υπάρχουν όλες οι προϋποθέσεις, μπορεί να περάσει τη μονάδα και Δοκιμή ολοκλήρωσης στο εργαστήριο δοκιμών.
Ωστόσο, εάν η ίδια εφαρμογή είναι εγκατεστημένη σε ένα χώρο πελάτη και τα μηχανήματα δεν έχουν κάποιες ενημερώσεις λογισμικού ή τις εκδόσεις από τις οποίες εξαρτάται άμεσα ή έμμεσα η εφαρμογή, υπάρχει πιθανότητα να αποτύχει η εφαρμογή. Για να αποφύγετε τέτοιου είδους καταστάσεις, συνιστάται πάντα να αποτυγχάνετε στις δοκιμές με μη αυτόματο τρόπο, αφαιρώντας ορισμένες από τις απαιτήσεις διαμόρφωσης και, στη συνέχεια, να προχωρήσετε στη δοκιμή.
Δοκιμή διαμόρφωσης υλικού
Οι δοκιμές διαμόρφωσης υλικού εκτελούνται γενικά σε εργαστήρια, όπου βρίσκουμε φυσικές μηχανές με διαφορετικό υλικό συνδεδεμένο σε αυτά.
Κάθε φορά που κυκλοφορεί μια έκδοση, το λογισμικό πρέπει να εγκατασταθεί σε όλα τα φυσικά μηχανήματα όπου είναι συνδεδεμένο το υλικό και η δοκιμαστική σουίτα πρέπει να εκτελείται σε κάθε μηχάνημα για να διασφαλιστεί ότι η εφαρμογή λειτουργεί κανονικά.
Για την εκτέλεση της παραπάνω εργασίας απαιτείται σημαντική προσπάθεια για την εγκατάσταση του λογισμικού σε κάθε μηχάνημα, τη σύνδεση του υλικού και τη μη αυτόματη εκτέλεση ή ακόμα και την αυτοματοποίηση της παραπάνω διαδικασίας και την εκτέλεση της δοκιμαστικής σουίτας.
Επίσης, κατά την εκτέλεση της δοκιμής διαμόρφωσης υλικού, καθορίζουμε τον τύπο υλικού που θα ελεγχθεί και υπάρχουν πολλά υλικά και περιφερειακά υπολογιστών που καθιστούν εντελώς αδύνατη την εκτέλεση όλων αυτών. Έτσι, είναι καθήκον του ελεγκτή να αναλύσει το υλικό που χρησιμοποιείται κυρίως από τους χρήστες και να προσπαθήσει να κάνει τη δοκιμή με βάση την ιεράρχηση.
Δείγματα Δοκιμαστικών Υποθέσεων
Εξετάστε ένα τραπεζικό σενάριο για να ελέγξετε τη συμβατότητα του υλικού. Μια τραπεζική εφαρμογή που είναι συνδεδεμένη με τη Μηχανή Καταμέτρησης Σημειώσεων πρέπει να δοκιμαστεί με διαφορετικά μοντέλα όπως Rolex, Strob, Maxsell, StoK κ.λπ.
Ας πάρουμε μερικά δείγματα δοκιμών για να δοκιμάσουμε τη Μηχανή Καταμέτρησης Σημειώσεων
- Επαλήθευση της σύνδεσης της εφαρμογής με το μοντέλο Rolex όταν ΔΕΝ είναι εγκατεστημένα τα προαπαιτούμενα
- Επαλήθευση της σύνδεσης της εφαρμογής με το μοντέλο Rolex όταν εγκατασταθούν τα προαπαιτούμενα
- Επαληθεύστε εάν το σύστημα μετράει σωστά τις σημειώσεις
- Βεβαιωθείτε ότι το σύστημα μετρά εσφαλμένα τις σημειώσεις
- Επαλήθευση των παραποιημένων σημειώσεων
- Επαλήθευση των χρόνων απόκρισης
- Επαλήθευση εάν εντοπιστούν τα πλαστά χαρτονομίσματα και ούτω καθεξής
Οι παραπάνω περιπτώσεις δοκιμών είναι για ένα μοντέλο και το ίδιο πρέπει να δοκιμαστεί με όλα τα μοντέλα που είναι διαθέσιμα στην αγορά, τοποθετώντας τα σε ένα εργαστήριο δοκιμών που είναι δύσκολο. Ως εκ τούτου, συνιστάται η εξωτερική ανάθεση των δοκιμών διαμόρφωσης υλικού σε οργανισμούς που τους εξειδικεύουν.
Σύνοψη
Στη Μηχανική Λογισμικού, οι Δοκιμές Διαμόρφωσης πρέπει να δίνονται με την ίδια σημασία όπως και άλλοι τύποι δοκιμών. Χωρίς να πραγματοποιηθεί δοκιμή διαμόρφωσης, είναι δύσκολο να αναλυθεί η βέλτιστη απόδοση του συστήματος και επίσης το λογισμικό μπορεί να αντιμετωπίσει προβλήματα συμβατότητας στα οποία υποτίθεται ότι θα εκτελείται.