Πλάνο ελέγχων για φόρμα εγγραφής

Plano-elegxwn-gia-forma-eggrafis-featured

Πρόλογος

Μια εταιρία, έστω CompanyName, κινείται στο εμπόριο και συνεργάζεται με προμηθευτές. Στον ιστοχώρο της δίνει την δυνατότητα στους προμηθευτές της να εγγράφονται και να διαχειρίζονται τα προϊόντα τα οποία αγοράζει η εταιρία αυτή. Το συγκεκριμένο έργο αφορά τον έλεγχο ορθής λειτουργίας της σελίδας δημιουργίας λογαριασμού προμηθευτή. Ποιό συγκεκριμένα, ζητήθηκε να γίνει ένα πλάνο ελέγχων οι οποίοι πρέπει να γίνουν στην φόρμα εγγραφής. Το πλάνο αυτό αφ’ ενός αναλύει τι έλεγχει πρέπει να γίνουν και αφ’ ετέρου τους εκτελεί ορίζοντας αναφορές σφαλμάτων, bug reports, όπου χρειάζεται. Στο συγκεκριμένο έργο δόθηκε περισσότερο η ανάλυση των ελέγχων και παρουσιάζεται μόνο ένα bug.

Η σελίδα εγγραφής

Η φόρμα εγγραφής αποτελείται από τρια τμήματα τα οποία εμφανίζονται ως εικόνες παρακάτω:

Plano-elegxwn-gia-forma-eggrafis-Screen-1
Plano-elegxwn-gia-forma-eggrafis-Screen-2
Plano-elegxwn-gia-forma-eggrafis-Screen-3

Πλάνο ελέγχωνtest plan

Το πλάνο ελέγχων σε θεωρητικό επίπεδο πρέπει να καλύψει ελέγχουν διαφόρων τύπων όπως:

  • Λειτουργικοί έλεγχοι (π.χ. functional testing),
  • Έλεγχος της σελίδας σε διαφορετικές συσκευές,
  • Έλεγχος σε διαφορετικούς φυλλομετρητές,
  • Security testing,
  • Load testing,
  • κ.λ.π.

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

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

Για κάθε λοιπόν πεδίο της φόρμας θα πρέπει να γραφτεί μια σειρά από test cases τα οποία στο σύνολο τους θα πρέπει να καλύτπουν το κατά δύναμη όσο γίνεται όλα τα πιθανα σενάρια εισαγωγής δεδομένων. Για τον λόγο αυτό θέτουμε αρχικά συγκεκριμένα δεδομένα δοκιμής, test data, και για κάθε ένα δεδομένο το οποίο θα μπει σε ένα συγκεκριμένο πεδίο της φόρμας θέτουμε μια σειρά από σενάρια – test cases.

Μπορείτε να δείτε την πλήρη καταγραφή των test cases για κάθε ένα πεδίο στο ακόλουθο αρχείο το οποίο είναι στα Αγγλικά.

Αναφορά σφάλματος – bug report

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

Στο συγκεκριμένο έργο έκανα ένα σύνθετο test case. Έλεγξα τον σωστό συνδυασμό του κωδικού χώρας μιας συγκεκριμένης χώρας, Phone prefix , με την επιλογή της χώρας Country. Δηλαδή εάν βάλω το +1 που είναι για Η.Π.Α με ελληνικό κινητό πως θα συμπεριφερθεί η φόρμα; θα μου βγάλει σφάλμα ασυμβατότητας μεταξύ των τιμών αυτών των πεδίων. Αυτό λοιπόν έκανα στην αναφορά σφάλματος που μπορείτε να δείτε στο ακόλουθο αρχείο το οποίο είναι στα Αγγλικά.

Επίλογος

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