Δοκιμή Μετάβασης Κατάστασης με Παράδειγμα

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

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

  • 🔄 Βασική ιδέα: Η τεχνική ελέγχει τη συμπεριφορά του συστήματος όταν η ίδια είσοδος παράγει διαφορετικές εξόδους με βάση προηγούμενα συμβάντα (ένα σύστημα πεπερασμένων καταστάσεων).
  • 🧩 Τέσσερα δομικά στοιχεία: Κάθε μοντέλο βασίζεται σε Καταστάσεις, Μεταβάσεις, Γεγονότα και Ενέργειες.
  • Διάγραμμα έναντι Πίνακα: Τα διαγράμματα αποκαλύπτουν έγκυρες μεταβάσεις, ενώ οι πίνακες αποκαλύπτουν μη έγκυρες μεταβάσεις.
  • 🏧 Πρακτικά παραδείγματα: Το κλείδωμα του PIN του ATM και η σύνδεση στην κράτηση πτήσης αποδεικνύουν πραγματική κάλυψη.
  • 🤖 Ενεργοποίηση Τεχνητής Νοημοσύνης: Τα εργαλεία τεχνητής νοημοσύνης δημιουργούν αυτόματα μοντέλα κατάστασης από απαιτήσεις και επισημαίνουν μεταβάσεις που λείπουν ή είναι μη έγκυρες.

Δοκιμές Μετάβασης Πολιτειών — Πολιτείες

Τι είναι το State Transition Testing;

Δοκιμή μετάβασης κατάστασης είναι μια τεχνική δοκιμής μαύρου κουτιού στην οποία οι αλλαγές στις συνθήκες εισόδου προκαλούν αλλαγές στην κατάσταση ή αλλαγές στην έξοδο στην Εφαρμογή υπό δοκιμή (AUT). Βοηθά στην ανάλυση της συμπεριφοράς μιας εφαρμογής για διαφορετικές συνθήκες εισόδου και οι δοκιμαστές μπορούν να παρέχουν θετικές και αρνητικές τιμές εισόδου ενώ καταγράφουν τη συμπεριφορά του συστήματος.

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

Πότε να χρησιμοποιείτε τη δοκιμή μετάβασης κατάστασης

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

Πότε δεν πρέπει να βασίζεστε στις δοκιμές μετάβασης σε κατάσταση

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

Τέσσερα Μέρη ενός Διαγράμματος Μετάβασης Κατάστασης

Υπάρχουν τέσσερα κύρια στοιχεία του μοντέλου Μετάβασης Κατάστασης, τα οποία περιγράφονται παρακάτω.

1) Πολιτεία που μπορεί να φτάσει το λογισμικό.

Δοκιμές Μετάβασης Πολιτειών — Πολιτείες

2) Μετάβαση από τη μία πολιτεία στην άλλη.

Δοκιμή Μετάβασης Κατάστασης — Μετάβαση

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

Δοκιμές Μετάβασης Πολιτείας — Εκδηλώσεις

4) Δράσεις που προκύπτουν από μια μετάβαση, όπως ένα μήνυμα σφάλματος ή η λήψη μετρητών.

Δοκιμή Μετάβασης Κατάστασης — Ενέργειες

Διάγραμμα Μετάβασης Κατάστασης έναντι Πίνακα Μετάβασης Κατάστασης

Υπάρχουν δύο κύριοι τρόποι για να αναπαραστήσουμε ή να σχεδιάσουμε τη μετάβαση κατάστασης: το διάγραμμα μετάβασης κατάστασης και ο πίνακας μετάβασης κατάστασης.

Άποψη Διάγραμμα μετάβασης κατάστασης Πίνακας μετάβασης κατάστασης
Επίσης λέγεται Γράφημα κατάστασης / Γράφημα Πίνακας κατάστασης
Αναπαράσταση Boxes για καταστάσεις, βέλη για μεταβάσεις Πλέγμα καταστάσεων (γραμμές) και συμβάντων (στήλες)
καλυτερα for identification Έγκυρες μεταβάσεις Μη έγκυρες μεταβάσεις
Κάθε κελί δείχνει - Η κατάσταση που επιτυγχάνεται μετά την εμφάνιση ενός συμβάντος

Πώς να κάνετε μια μετάβαση κατάστασης (Παραδείγματα)

Παράδειγμα 1: Κλείδωμα PIN ATM

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

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

Διάγραμμα Μετάβασης Κατάστασης (Παράδειγμα 1)

Διάγραμμα μετάβασης κατάστασης PIN ATM

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

Πίνακας Μετάβασης Κατάστασης (Παράδειγμα 1)

Κατάσταση Σωστό PIN Εσφαλμένο PIN
S1) Έναρξη S5 S2
S2) 1η προσπάθεια S5 S3
S3) 2η προσπάθεια S5 S4
S4) 3η προσπάθεια S5 S6
S5) Παραχωρήθηκε πρόσβαση - -
S6) Ο λογαριασμός είναι αποκλεισμένος - -

Στον πίνακα, όταν ο χρήστης εισάγει το σωστό PIN, η κατάσταση μεταβαίνει σε S5 (Πρόσβαση Εγκρίθηκε). Εάν ο χρήστης εισάγει λάθος κωδικό πρόσβασης, μεταβαίνει στην επόμενη κατάσταση και μετά την τρίτη λανθασμένη προσπάθεια φτάνει στην κατάσταση Αποκλεισμός Λογαριασμού.

Παράδειγμα 2: Σύνδεση Κράτησης Πτήσης

Στην οθόνη σύνδεσης κράτησης πτήσης, πρέπει να εισαγάγετε το σωστό όνομα και κωδικό πρόσβασης του πράκτορα για να αποκτήσετε πρόσβαση στο αίτηση κράτησης πτήσης.

Γράφημα Μετάβασης Κατάστασης Κράτησης Πτήσης

Γράφημα μετάβασης κατάστασης

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

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

Πίνακας Μετάβασης Κατάστασης Κράτησης Πτήσης

Σε έναν Πίνακα Καταστάσεων, όλες οι έγκυρες καταστάσεις παρατίθενται στα αριστερά και τα συμβάντα που τις προκαλούν στην κορυφή. Κάθε κελί δείχνει την κατάσταση στην οποία μεταβαίνει το σύστημα όταν συμβαίνει το συμβάν. Για παράδειγμα, στην κατάσταση S1, ένας σωστός κωδικός πρόσβασης σας μεταφέρει στο S6 (Πρόσβαση Εγκρίθηκε). ένας λανθασμένος κωδικός πρόσβασης στην πρώτη προσπάθεια σας μεταφέρει στο S3 (2η Προσπάθεια). Ομοίως, μπορείτε να προσδιορίσετε όλες τις άλλες καταστάσεις.

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

Πλεονεκτήματα και μειονεκτήματα της Τεχνικής της Μεταβατικής Πολιτικής

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

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

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

Τα τέσσερα μέρη είναι οι Καταστάσεις (συνθήκες στις οποίες μπορεί να βρίσκεται το λογισμικό), οι Μεταβάσεις (κίνηση μεταξύ καταστάσεων), τα Συμβάντα (ενεργοποιητές που προκαλούν μια μετάβαση) και οι Ενέργειες (αποτελέσματα μιας μετάβασης, όπως ένα μήνυμα ή μια έξοδος).

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

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

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

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

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

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

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