Κέρδη:
- Δυνατότητα μετατροπής μιας απαίτησης και κριτηρίων αποδοχής σε ολοκληρωμένες περιπτώσεις δοκιμών με τεχνικές όπως τάξεις ισοδυναμίας, ανάλυση οριακών τιμών και πίνακες αποφάσεων, με την υποστήριξη της τεχνητής νοημοσύνης
- Δυνατότητα δημιουργίας θετικών, αρνητικών και ακραίων σεναρίων χωριστά και συμπλήρωσης των περιπτώσεων αιχμής που χάνονται από την τεχνητή νοημοσύνη με πληροφορίες προϊόντος
- Δυνατότητα καθιέρωσης ιχνηλασιμότητας και εξάλειψης των κενών κάλυψης και του περιττού φουσκώματος, συνδέοντας τις περιπτώσεις δοκιμής με κριτήρια αποδοχής
Η δουλειά του ελεγκτή συχνά ξεκινά με αυτήν την κενή πλάκα: έχει μια απαίτηση ("ο χρήστης πρέπει να μπορεί να επαναφέρει τον κωδικό πρόσβασής του") και πρέπει να μετατρέψει αυτήν την πρόταση σε δεκάδες συγκεκριμένους ελέγχους που θα αποδείξουν ότι το λογισμικό λειτουργεί πραγματικά σωστά. Αυτός ο μετασχηματισμός ονομάζεται δοκιμαστικός σχεδιασμός. Η γνώση της διαφοράς μεταξύ ενός σεναρίου δοκιμής —ένας στόχος υψηλού επιπέδου που περιγράφει τι πρέπει να δοκιμαστεί, όπως "ο μη έγκυρος κωδικός πρόσβασης πρέπει να απορριφθεί" — και μια δοκιμαστική περίπτωση — είναι το κλειδί για μια εκτελέσιμη μονάδα που περιγράφει λεπτομερώς αυτό το σενάριο με συγκεκριμένα βήματα, εισαγωγή και αναμενόμενο αποτέλεσμα. Η τεχνητή νοημοσύνη (AI) επιταχύνει ακριβώς αυτή τη στιγμή της λευκής σελίδας: μετατρέποντας μια απαίτηση σε δεκάδες πρόχειρα σενάρια σε δευτερόλεπτα. Αλλά θυμηθείτε - η τεχνητή νοημοσύνη αναπαράγει ποιες καταστάσεις μπορείτε να σκεφτείτε. Εσείς επιλέγετε με τη γνώση του προϊόντος σας ποιες καταστάσεις είναι πραγματικά σημαντικές.
Σε αυτή την ενότητα, θα μάθετε βήμα προς βήμα πώς να μετατρέψετε μια απαίτηση σε μια ολοκληρωμένη αλλά χωρίς ακαταστασία σουίτα δοκιμών με υποστήριξη AI.
Βήμα προς βήμα: από την απαίτηση στο σετ δοκιμής
Βήμα 1 — Διευκρινίστε την απαίτηση. Συλλέξτε κριτήρια αποδοχής (προϋποθέσεις που πρέπει να πληροί μια εργασία για να θεωρηθεί ότι έχει ολοκληρωθεί) πριν δώσετε στο AI την ακατέργαστη απαίτηση. Το "ο κωδικός πρέπει να μπορεί να επαναφερθεί" δεν είναι αρκετό. Κανόνες όπως "ο σύνδεσμος επαναφοράς ισχύει για 30 λεπτά", "ο ίδιος κωδικός πρόσβασης δεν μπορεί να επαναχρησιμοποιηθεί" είναι η πηγή της πραγματικής δοκιμής.
Βήμα 2 — Εφαρμογή τεχνικών δοκιμών. Μην πείτε απλώς "γράψτε ένα σενάριο" για την τεχνητή νοημοσύνη. Ζητήστε κλασικές τεχνικές σχεδιασμού δοκιμής ονομαστικά:
- Κατηγορίες ισοδυναμίας (διαμερισμός ισοδυναμίας): Διαίρεση εισόδων σε ομάδες που αναμένεται να παράγουν την ίδια συμπεριφορά. Για παράδειγμα, για το πεδίο ηλικίας, οι κατηγορίες "έγκυρο εύρος", "πολύ μικρό" και "πολύ μεγάλο" είναι κατηγορίες. Η δοκιμή ενός παραδείγματος από κάθε τάξη αρκεί.
- Ανάλυση οριακών τιμών: Έλεγχος τιμών κατωφλίου με βάση το γεγονός ότι τα σφάλματα εμφανίζονται περισσότερο στα όρια. Είναι σαν να δοκιμάζω τα 17, 18, 19 ξεχωριστά για το όριο ηλικίας των 18.
- Πίνακας αποφάσεων: Πινακοποίηση συνδυασμών πολλαπλών συνθηκών και το αναμενόμενο αποτέλεσμα κάθε συνδυασμού.
- Μετάβαση κατάστασης: Έλεγχος των μεταβάσεων του συστήματος από κατάσταση σε κατάσταση (για παράδειγμα, παραγγελία: δημιουργήθηκε → πληρώθηκε → αποστολή) και μη έγκυρες μεταβάσεις.
Βήμα 3 — Διαχωρίστε τις θετικές, αρνητικές και ακμές καταστάσεις. Ζητήστε ένα θετικό τεστ (αναμενόμενο αποτέλεσμα με σωστή εισαγωγή), ένα αρνητικό τεστ (σωστό σφάλμα με μη έγκυρη είσοδο) και μια ακραία περίπτωση — οριακές ή ασυνήθιστες περιπτώσεις. Η τεχνητή νοημοσύνη υπογραμμίζει γενικά τα θετικά. Τα αρνητικά και τα edge case είναι ελλιπή εκτός και αν τα ζητήσετε ρητά.
Βήμα 4 — Δώστε προτεραιότητα και κλαδέψτε. Η τεχνητή νοημοσύνη μπορεί να δημιουργήσει 60 σενάρια. Δεν είναι όλα ίσης αξίας. Δώστε προτεραιότητα σε όσους έχουν υψηλό κίνδυνο (χρήματα, ασφάλεια, απώλεια δεδομένων) και συνδυάστε αυτά που είναι διπλότυπα.
Συμβουλή: Στείλτε ένα ξεχωριστό αίτημα στην τεχνητή νοημοσύνη λέγοντας "δημιουργήστε 5 αδιανόητες περιπτώσεις άκρων από αυτήν την απαίτηση". Η πιο πολύτιμη συμβολή της τεχνητής νοημοσύνης είναι ότι συχνά σας υπενθυμίζει εξαιρετικές καταστάσεις που έχετε παραβλέψει.
Αδύναμη προτροπή / Ισχυρή προτροπή
Αδύναμο: "Γράψτε δοκιμαστικές περιπτώσεις για επαναφορά κωδικού πρόσβασης."
Ισχυρό: "Δημιουργία δοκιμαστικών περιπτώσεων για τη λειτουργία "επαναφορά κωδικού πρόσβασης" με τα ακόλουθα κριτήρια αποδοχής: σύνδεσμος έγκυρος για 30 λεπτά, μία χρήση, οι τελευταίοι 3 κωδικοί πρόσβασης δεν μπορούν να επαναχρησιμοποιηθούν, ο λογαριασμός κλειδώθηκε για 15 λεπτά μετά από 5 λανθασμένες προσπάθειες. Εφαρμόστε κατηγορίες ισοδυναμίας και ανάλυση οριακών τιμών. Δώστε θετικές, αρνητικές και ακραίες περιπτώσεις: για κάθε θετική, αρνητική και ακραία περίπτωση: σε ξεχωριστά βήματα δοκιμής, αναμενόμενα αποτελέσματα ιστοτόπου, προκαταρκτικές περιπτώσεις, αναμενόμενα αποτελέσματα δοκιμής. Τα κριτήρια αποδοχής επισημάνετε τα σενάρια ασφάλειας/κλειδώματος."
Ισχυρή προτροπή. Δίνει κανόνες, τεχνικές, μορφή εξόδου και σειρά προτεραιότητας. Έτσι, η τεχνητή νοημοσύνη παράγει εκτελέσιμες και ανιχνεύσιμες περιπτώσεις δοκιμών, όχι διακοσμητικές.
Μορφή εξόδου δοκιμαστικής θήκης
Ζητήστε μια δομημένη μορφή που μπορεί να εισαχθεί απευθείας στο εργαλείο διαχείρισης δοκιμών της ομάδας σας (π.χ. TestRail, Zephyr, Xray). Ο παρακάτω πίνακας δείχνει τα στοιχεία μιας καλής δοκιμαστικής περίπτωσης:
περιοχή
Περιγραφή
παράδειγμα
ID
μοναδική ταυτότητα
TC-PWD-014
Τίτλος
σύντομος σκοπός
Ο σύνδεσμος που έχει λήξει θα απορριφθεί
προαπαιτούμενο
Απαιτείται συνθήκη πριν από τη δοκιμή
Ο σύνδεσμος επαναφοράς δημιουργήθηκε πριν από 31 λεπτά
βήματα
Διαδοχικές ενέργειες
1. Κάντε κλικ στο σύνδεσμο 2. Εισαγάγετε νέο κωδικό πρόσβασης
δεδομένα δοκιμής
Χρησιμοποιούνται συγκεκριμένες τιμές
παλιός σύνδεσμος, νέος κωδικός "Abc!2345"
αναμενόμενο αποτέλεσμα
Συμπεριφορά προς επαλήθευση
Σφάλμα "Ο σύνδεσμος έληξε", ο κωδικός πρόσβασης δεν αλλάζει
Κριτήρια αποδοχής
σύνδεσμος ιχνηλασιμότητας
AK-3: σύνδεσμος ισχύει για 30 λεπτά
προτεραιότητα
Επίπεδο κινδύνου
ψηλά
Τέσσερα πρότυπα με δυνατότητα αντιγραφής
1) Παραγωγή σεναρίου με βάση την τεχνική:
Ο ρόλος σας: ανώτερος σχεδιαστής δοκιμών. Δημιουργήστε περιπτώσεις δοκιμής για το χαρακτηριστικό: [χαρακτηριστικά και κριτήρια αποδοχής]. Εφαρμογή: τάξεις ισοδυναμίας, ανάλυση σημείων διακοπής, πίνακας αποφάσεων. Παρέχετε αποτελέσματα σε 3 ομάδες: Θετική / Αρνητική / Περίπτωση άκρων. Κάθε περίπτωση: ID, προϋπόθεση, βήματα, δεδομένα δοκιμής, αναμενόμενο αποτέλεσμα, σχετικά κριτήρια αποδοχής, προτεραιότητα (Υψηλό/Χαμηλό).
2) Edge case Hunter:
Κατάλογος 10 περιβλημάτων άκρων που συνήθως παραβλέπονται για την ακόλουθη δυνατότητα: [χαρακτηριστικό]. Γράψτε σε μια πρόταση γιατί είναι επικίνδυνο για το καθένα. Σκεφτείτε άξονες όπως κενός/μηδενικός, πολύ μεγάλη εισαγωγή, ταυτόχρονη λήξη, χρονική λήξη, σφάλματα μορφής, Unicode/emoji, αρνητικό/μηδέν, διακοπή δικτύου.
3) Παραγωγή πίνακα αποφάσεων:
Δημιουργήστε πίνακα αποφάσεων για τον ακόλουθο επιχειρηματικό κανόνα: [κανόνες].Στήλες: συνδυασμοί συνθηκών. σειρές: κάθε συνθήκη και αναμενόμενη ενέργεια. Επισήμανση μη επιτεύξιμων ή αντικρουόμενων συνδυασμών. Στη συνέχεια προτείνετε μια δοκιμαστική περίπτωση για κάθε συνδυασμό.
4) Έλεγχος ιχνηλασιμότητας:
Λαμβάνοντας υπόψη τον ακόλουθο κατάλογο κριτηρίων αποδοχής και τις ακόλουθες περιπτώσεις δοκιμής:[κριτήρια] / [περιπτώσεις]. Δείξτε σε μορφή πίνακα ποια κριτήρια αποδοχής πληρούν οι περιπτώσεις δοκιμής ΟΧΙ (κενό κάλυψης) και ποιες περιπτώσεις δεν πληρούνται από κανένα κριτήριο (περιττή περίπτωση).
τρεις μίνι θήκες
Περίπτωση 1 — Τιμή καταστάσεων ακμών. Ένας ειδικός από μια ομάδα fintech είχε γράψει 18 σενάρια για τη λειτουργία μεταφοράς χρημάτων. Εφάρμοσε το πρότυπο "Edge case hunter" στην τεχνητή νοημοσύνη. Η τεχνητή νοημοσύνη υπενθύμισε την κατάσταση της «μεταφοράς του ίδιου υπολοίπου από δύο συσκευές ταυτόχρονα» (συγχρονισμός). Όταν δοκιμάστηκε αυτό το σενάριο, βρέθηκε μια ευπάθεια διπλής δαπάνης και έκλεισε πριν από τη μετάδοση. Ένα μόνο περιθώριο απέτρεψε μια πιθανή εξαψήφια απώλεια.
Περίπτωση 2 — Κόψιμο του εξογκώματος. Μια ομάδα ζήτησε από το AI να δημιουργήσει ένα σενάριο για τη φόρμα μέλους και 74 περιπτώσεις διεκπεραίωσαν. Με την εκτέλεση του προτύπου ιχνηλασιμότητας διαπιστώθηκε ότι 74 περιπτώσεις πληρούσαν μόνο 9 κριτήρια αποδοχής, με πολλές να δοκιμάζουν ξανά την ίδια κατηγορία ισοδυναμίας. Το σύνολο μειώθηκε από 74 σε 23 σημαντικές περιπτώσεις. Ο χρόνος εκτέλεσης μειώθηκε κατά 68%, η κάλυψη δεν μειώθηκε.
Περίπτωση 3 — Λανθασμένη υπόθεση. Το AI πρότεινε τη δοκιμή μη έγκυρων ημερομηνιών, όπως "31 Φεβρουαρίου" για ένα πεδίο ημερομηνίας, αλλά δεν γνώριζε ότι το στοιχείο ημερολογίου που χρησιμοποιούσε η ομάδα το είχε ήδη αποκλείσει. Ο εμπειρογνώμονας εξάλειψε 4 από τα 6 σενάρια ημερομηνιών που δημιουργήθηκαν από το AI ως περιττά στο πλαίσιο του προϊόντος. Δυνατότητες που δημιουργούνται από AI. έκανε μια επιλογή πληροφοριών προϊόντος.
Συνήθη λάθη
- Ζητώντας ένα σενάριο χωρίς να δώσετε κριτήρια αποδοχής. Χωρίς να γνωρίζει τι είναι αλήθεια, η τεχνητή νοημοσύνη παράγει επιφανειακά σενάρια που συχνά χάνουν τον πραγματικό κίνδυνο.
- Απλώς συμβιβάζομαι με θετικά τεστ. Ρητά μη επιθυμώντας αρνητικές και ακραίες περιπτώσεις. Εδώ βρίσκονται συχνά τα λάθη.
- Αποδοχή αυτού που παράγεται ως έχει. Ξεχνώντας ότι το AI δεν γνωρίζει το πλαίσιο του προϊόντος και αφήνοντας περιττά ή αδύνατα σενάρια στο σετ.
- Παράκαμψη της ιχνηλασιμότητας. Μη σύνδεση των υποθέσεων με κριτήρια αποδοχής. με αποτέλεσμα να μην φαίνεται ποιο κριτήριο δεν ελέγχεται (κενό κάλυψης).
- Ποσολογική πλάνη. Να είμαι χαρούμενος γιατί «βγήκαν 60 σενάρια». Η αξία δεν είναι στον αριθμό, αλλά στο εύρος που καλύπτει τον κίνδυνο.
Συνοπτικά
Ο σχεδιασμός δοκιμής αφορά τη μετάφραση μιας απαίτησης μιας πρότασης σε συγκεκριμένες, εκτελέσιμες περιπτώσεις που αποδεικνύουν την ορθότητα του λογισμικού. Η τεχνητή νοημοσύνη επιταχύνει πολύ αυτόν τον μετασχηματισμό: παράγει ολοκληρωμένα σχεδιαγράμματα όταν του δίνετε κριτήρια αποδοχής, κλασικές τεχνικές δοκιμών (τάξεις ισοδυναμίας, σημείο διακοπής, πίνακας αποφάσεων, μετάβαση κατάστασης) και σαφή μορφή εξόδου. Ωστόσο, η τεχνητή νοημοσύνη είναι προκατειλημμένη προς το θετικό, δεν γνωρίζει το πλαίσιο του προϊόντος και μπορεί να προκαλέσει περιττό φούσκωμα. Η δουλειά σας είναι να ζητάτε ρητά αρνητικές και ακραίες περιπτώσεις, να καθιερώνετε ιχνηλασιμότητα, να δίνετε προτεραιότητες βάσει κινδύνου και να κλαδεύετε.
Εργασία εφαρμογής
Επιλέξτε ένα χαρακτηριστικό από το δικό σας έργο και σημειώστε τα κριτήρια αποδοχής. Ζητήστε από το AI να δημιουργήσει δοκιμαστικές περιπτώσεις με το πρότυπο «δημιουργία σεναρίων βάσει τεχνικής». Στη συνέχεια, εφαρμόστε τα πρότυπα "Edge case hunter" και "traceability check". Ως αποτέλεσμα: (1) προσθέστε τουλάχιστον 3 θήκες άκρων που παραλείπει το AI, (2) κλαδέψτε θήκες που δεν συνδέονται με κανένα κριτήριο αποδοχής, (3) γράψτε νέες περιπτώσεις εάν υπάρχουν κριτήρια αποδοχής που δεν έχουν δοκιμαστεί. Ρίξτε το τελικό σετ σε ένα υπολογιστικό φύλλο.
λίστα ελέγχου
- [ ] Πριν ζητήσω ένα σενάριο, διευκρίνισα τα κριτήρια αποδοχής.
- [ ] Ζήτησα από τον YZ για κλάσεις ισοδυναμίας και ανάλυση οριακών τιμών ονομαστικά.
- [ ] Δημιούργησα θετικές, αρνητικές και ακμές καταστάσεις ξεχωριστά.
- [ ] Συνέδεσα κάθε δοκιμαστική περίπτωση με ένα κριτήριο αποδοχής (ιχνηλασιμότητα).
- [ ] Έλεγξα το κενό πεδίου εφαρμογής και τις περιττές περιπτώσεις με τον πίνακα.
- [ ] Έδωσα προτεραιότητα με βάση τον κίνδυνο και κλάδεψα το πρησμένο σύνολο.