Έξυπνη Ταυτοποίηση σε QTP/UFT με Παράδειγμα
⚡ Έξυπνη Σύνοψη
Η Έξυπνη Ταυτοποίηση είναι ένας εφεδρικός μηχανισμός UFT Μία για τον εντοπισμό ενός αντικειμένου όταν η περιγραφή που έχει μάθει δεν ταιριάζει πλέον με την εφαρμογή που δοκιμάζεται, χρησιμοποιώντας βασικές και προαιρετικές ιδιότητες φίλτρου για να περιορίσετε μια λίστα υποψηφίων σε μία αντιστοιχία.

Τι είναι η Έξυπνη Ταυτοποίηση; QTP/UFT?
Έξυπνη αναγνώριση είναι ένας εφεδρικός μηχανισμός αναγνώρισης αντικειμένων στο OpenText UFT Ένα, το εργαλείο που ήταν παλαιότερα γνωστό ως HP QuickTest Professional (QTP). Εάν η κανονική διαδικασία αναγνώρισης δεν μπορεί να βρει μια μοναδική αντιστοιχία για την μαθησιακή περιγραφή ενός αντικειμένου, UFT Ενεργοποιεί την Έξυπνη Αναγνώριση, εφόσον ο μηχανισμός είναι ενεργοποιημένος στις ρυθμίσεις Αναγνώρισης Αντικειμένου για την κλάση αυτού του αντικειμένου.
Σε αντίθεση με την εκμάθηση της περιγραφής, η Έξυπνη Αναγνώριση δεν απαιτεί ακριβή αντιστοίχιση σε κάθε αποθηκευμένη ιδιότητα. Αξιολογεί δύο κατηγορίες ιδιοτήτων για να περιορίσει μια ομάδα υποψήφιων αντικειμένων σε ακριβώς μία:
- Ιδιότητες φίλτρου βάσης. Οι πιο θεμελιώδεις ιδιότητες μιας κλάσης αντικειμένου δοκιμής· αυτές των οποίων οι τιμές δεν μπορούν να αλλάξουν χωρίς να αλλάξει η ουσία του αρχικού αντικειμένου.
- Προαιρετικές ιδιότητες φίλτρου. Υποστηρικτικές ιδιότητες που βοηθούν στην αναγνώριση ενός αντικειμένου, αλλά είναι πιο πιθανό να αλλάξουν με την πάροδο του χρόνου.
Όταν εκτελείται η Έξυπνη Αναγνώριση, UFT «ξεχνάει» την περιγραφή που έχει μαθευτεί και ξαναδημιουργεί μια νέα λίστα υποψηφίων που περιέχει κάθε αντικείμενο που ταιριάζει με όλες τις Ιδιότητες Βασικού Φίλτρου. Στη συνέχεια, περιορίζει περαιτέρω αυτήν τη λίστα, ελέγχοντας τις Προαιρετικές Ιδιότητες Φίλτρου μία κάθε φορά, μέχρι να παραμείνει ένα μόνο αντικείμενο.
Εάν η Έξυπνη Αναγνώριση ενεργοποιηθεί κατά τη διάρκεια μιας περιόδου εκτέλεσης, το δέντρο αποτελεσμάτων δοκιμών καταγράφει ένα προειδοποιητικό μήνυμα που επιβεβαιώνει ότι χρησιμοποιήθηκε ο μηχανισμός και ένα βήμα Έξυπνης Αναγνώρισης εισάγεται στα αποτελέσματα, ώστε η απόκλιση από την μαθησιακή περιγραφή να παραμένει ορατή.
Η Έξυπνη Ταυτοποίηση κατατάσσεται τρίτη στην κατάταξη. UFTτην ιεραρχία αναγνώρισης αντικειμένων, μετά την μαθησιακή περιγραφή και οποιοδήποτε Αναγνωριστικό Οπτικής Σχέσης, και πριν από το τακτικό αναγνωριστικό που χρησιμοποιείται ως έσχατη λύση. Η κατανόηση του πού ταιριάζει εξηγεί γιατί η απενεργοποίησή του εντελώς, αντί της διόρθωσης των υποκείμενων ιδιοτήτων, σπάνια είναι η καλύτερη μακροπρόθεσμη επιλογή για ένα σενάριο που εκτελείται συχνά.
Ιδιότητες βασικού φίλτρου έναντι προαιρετικών ιδιοτήτων φίλτρου
Και τα δύο φίλτρα λειτουργούν μαζί, αλλά παίζουν διαφορετικούς ρόλους στη διαδικασία εξάλειψης που περιγράφεται παραπάνω. Η παρακάτω σύγκριση διευκρινίζει πότε χρησιμοποιείται το καθένα και πόση ισχύ εξάλειψης μεταφέρει το καθένα.
| Άποψη | Ιδιότητες βασικού φίλτρου | Προαιρετικές ιδιότητες φίλτρου |
|---|---|---|
| Ρόλος | Δημιουργήστε την αρχική λίστα υποψηφίων | Περιορίστε τη λίστα υποψηφίων σε ένα αντικείμενο |
| σταθερότητα | Σχεδόν ποτέ δεν αλλάζει χωρίς να αλλάξει η ταυτότητα του αντικειμένου | Μπορεί να αλλάζει περιοδικά χωρίς να αλλάζει η ταυτότητα του αντικειμένου |
| Κανόνας αντιστοίχισης | Κάθε υποψήφιος πρέπει να ταιριάζει με όλες τις βασικές ιδιότητες | Έλεγξε μία ιδιότητα κάθε φορά. Μια ιδιότητα παραλείπεται εάν θα απέκλειε κάθε υποψήφιο |
| Τυπικό παράδειγμα | Ετικέτα HTML, κλάση αντικειμένου, ευρετήριο | Όνομα, αναγνωριστικό HTML, εναλλακτικό κείμενο, πηγή εικόνας |
| Πού έχει ρυθμιστεί | Αναγνώριση Αντικειμένου > Ρύθμιση > Ιδιότητες Βασικού Φίλτρου | Αναγνώριση Αντικειμένου > Διαμόρφωση > Προαιρετικές Ιδιότητες Φίλτρου |
Επειδή η ίδια ιδιότητα δεν μπορεί να βρίσκεται και στις δύο λίστες, σχεδιάστε προσεκτικά τον διαχωρισμό. Οι ιδιότητες που ορίζουν τι είναι ουσιαστικά ένα αντικείμενο ανήκουν στη βασική λίστα, ενώ οι ιδιότητες που απλώς βοηθούν στη διάκρισή του από παρόμοια αντικείμενα ανήκουν στην προαιρετική λίστα.
Πώς λειτουργεί η έξυπνη αναγνώριση: Η διαδικασία βήμα προς βήμα
Η Έξυπνη Αναγνώριση ενεργοποιείται μόνο αφού η περιγραφή που έχει μαθευτεί και οποιοδήποτε Αναγνωριστικό Οπτικής Σχέσης δεν εντοπίσει ένα μόνο αντικείμενο. Μόλις ενεργοποιηθεί, UFT λειτουργεί μέσω μιας προβλέψιμης διαδικασίας εξάλειψης τεσσάρων βημάτων:
- Ανασύνθεση της λίστας υποψηφίων. UFT αγνοεί την μαθημένη περιγραφή και σαρώνει το γονικό αντικείμενο του αντικειμένου για κάθε αντικείμενο που ταιριάζει με όλες τις Ιδιότητες Βασικού Φίλτρου.
- Εφαρμόστε την πρώτη προαιρετική ιδιότητα. UFT αφαιρεί οποιαδήποτε υποψήφια ιδιότητα δεν ταιριάζει με την πρώτη ιδιότητα στη λίστα Προαιρετικές Ιδιότητες Φίλτρου.
- Αξιολογήστε το αποτέλεσμα. Εάν απομένουν περισσότεροι από ένας υποψήφιοι, UFT επαναλαμβάνει το προηγούμενο βήμα με την επόμενη προαιρετική ιδιότητα. Εάν ένα φίλτρο θα απέκλειε κάθε εναπομείναντα υποψήφιο, UFT παραλείπει αυτήν την ιδιότητα και μετακινείται στην επόμενη.
- Σταματήστε σε έναν αγώνα. UFT επαναλαμβάνει τον κύκλο φιλτραρίσματος και αξιολόγησης μέχρι να απομείνει ακριβώς ένα αντικείμενο ή μέχρι να εξαντληθούν οι προαιρετικές ιδιότητες προς έλεγχο.
Εάν η διαδικασία αποβολής εξακολουθεί να μην μπορεί να απομονώσει ένα μόνο αντικείμενο, UFT επιστρέφει στην μαθημένη περιγραφή συν ένα τακτικό αναγνωριστικό, όπως ευρετήριο, τοποθεσία ή ώρα δημιουργίας. Όταν ακόμη και αυτός ο συνδυασμός δεν καταφέρει να αναγνωρίσει το αντικείμενο, η συνεδρία εκτέλεσης διακόπτεται προσωρινά και εμφανίζει ένα σφάλμα χρόνου εκτέλεσης.
Πώς να ενεργοποιήσετε ή να απενεργοποιήσετε την Έξυπνη Αναγνώριση
Η Έξυπνη Αναγνώριση διαμορφώνεται ανά κλάση αντικειμένου δοκιμής από Εργαλεία > Αναγνώριση ΑντικειμένουΕπιλέξτε το περιβάλλον και την κλάση αντικειμένου, ενεργοποιήστε Ενεργοποίηση Έξυπνης Ταυτοποίησης, στη συνέχεια κάντε κλικ στο κουμπί Διαμορφώστε για να επιλέξετε τις Βασικές και Προαιρετικές Ιδιότητες Φίλτρου για αυτήν την κλάση. Το ίδιο παράθυρο διαλόγου σάς επιτρέπει να απενεργοποιήσετε την επιλογή για μια κλάση που θα πρέπει πάντα να χρησιμοποιεί την περιγραφή που έχει μάθει.
Πώς λειτουργεί η Έξυπνη Ταυτοποίηση (Βίντεο με οδηγίες)
Το παρακάτω βίντεο παρουσιάζει τη βασική και την προαιρετική διαδικασία εξάλειψης φίλτρου σε ένα ζωντανό παράδειγμα.
Πατήστε εδώ εάν το βίντεο δεν είναι προσβάσιμο
Πλεονεκτήματα και μειονεκτήματα της χρήσης έξυπνης αναγνώρισης
Η Έξυπνη Αναγνώριση προσθέτει ανθεκτικότητα, αλλά αυτή η ανθεκτικότητα έχει ένα κόστος χρόνου εκτέλεσης. Ζυγίστε και τις δύο πλευρές πριν την αφήσετε ενεργοποιημένη από προεπιλογή σε ολόκληρο το αποθετήριο αντικειμένων.
- ✅ Επιβιώνει από μικρές αλλαγές στο UI: Ένα μετονομασμένο χαρακτηριστικό ή μια μετατοπισμένη θέση στη σελίδα δεν διακόπτει πλέον κάθε σενάριο που αγγίζει το αντικείμενο.
- ✅ Μειώνει τη συντήρηση του αποθετηρίου αντικειμένων: Οι δοκιμαστές αφιερώνουν λιγότερο χρόνο στην επανεγγραφή αντικειμένων μετά από μικρές κυκλοφορίες στο front-end.
- ✅ Παραμένει ορατό στα αποτελέσματα: Κάθε κλήση καταγράφει μια προειδοποίηση, ώστε οι ομάδες να μπορούν να ελέγξουν πόσο συχνά χρειάζεται πραγματικά η εφεδρική λειτουργία.
- ⚠️ Πιο αργή εκτέλεση δοκιμών: Η δημιουργία και το φιλτράρισμα μιας λίστας υποψηφίων διαρκεί πολύ περισσότερο χρόνο από μια άμεση αντιστοίχιση ακινήτου και το κόστος πολλαπλασιάζεται σε μια μεγάλη σουίτα.
- ⚠️ Μπορεί να καλύψει πραγματικά ελαττώματα: Εάν η Έξυπνη Αναγνώριση εντοπίσει αθόρυβα ένα παρόμοιο αντικείμενο, μια γνήσια παλινδρόμηση στο περιβάλλον χρήστη μπορεί να περάσει απαρατήρητη.
- ⚠️ Χρειάζεται περιοδική αναθεώρηση: Οι βασικές και οι προαιρετικές ιδιότητες φίλτρου εξακολουθούν να χρειάζονται περιστασιακή αναθεώρηση καθώς η εφαρμογή εξελίσσεται.
Οι περισσότερες ομάδες αφήνουν ενεργοποιημένη την Έξυπνη Αναγνώριση για εξερευνητικά και χαμηλής συχνότητας σενάρια και στη συνέχεια την απενεργοποιούν επιλεκτικά σε αντικείμενα κρίσιμα για την απόδοση, μόλις οι ιδιότητες αναγνώρισης του αντικειμένου είναι σταθερές.
Τροποποιήστε την ιδιότητα αντικειμένου για να αποφύγετε την έξυπνη αναγνώριση
Η ευελιξία του Smart Identification έρχεται με το κόστος εκτέλεσης που περιγράφεται παραπάνω, επομένως πολλές ομάδες προτιμούν να διορθώνουν οι ίδιες τις ιδιότητες αναγνώρισης αντικειμένων αντί να βασίζονται επανειλημμένα στην εφεδρική λύση. Παρακολουθήστε δύο ενδείξεις ότι μια διόρθωση ιδιότητας υπερτερεί μιας εφεδρικής λύσης εκτέλεσης: μια προειδοποίηση Smart Identification που εμφανίζεται σχεδόν σε κάθε εκτέλεση και ένα σενάριο που έχει αυξηθεί αισθητά πιο αργά από τότε που άρχισε να ενεργοποιείται η εφεδρική λύση. Και τα δύο υποδεικνύουν ένα αντικείμενο του οποίου οι προεπιλεγμένες ιδιότητες αναγνώρισης δεν ταιριάζουν πλέον στην εφαρμογή, παρά ένα μεμονωμένο σφάλμα στο περιβάλλον χρήστη. Το παρακάτω βίντεο δείχνει τη διόρθωση σε μια πραγματική φόρμα σύνδεσης.
Πατήστε εδώ εάν το βίντεο δεν είναι προσβάσιμο
Μεταγραφή βίντεο: Βασικά σημεία
- Η έξυπνη αναγνώριση επιβραδύνει την εκτέλεση σεναρίων, κάτι που δεν είναι επιθυμητό για μεγάλες ή συχνά εκτελούμενες σουίτες.
- Για να το αποφύγετε εντελώς, αλλάξτε τις προεπιλεγμένες ιδιότητες αναγνώρισης αντικειμένων αντί να βασίζεστε στην εφεδρική λειτουργία.
- In Αναγνώριση αντικειμένου, αφαιρέστε το "name" από τις υποχρεωτικές ιδιότητες και αντικαταστήστε το με το "HTML id" για να κάνετε τη δοκιμή ανεξάρτητη από τις αλλαγές ονόματος.
- Καταγράψτε ξανά τα ίδια βήματα μόλις ενημερωθεί ο υποχρεωτικός κατάλογος ακινήτων.
- Εάν το όνομα αλλάξει αργότερα από "Υποβολή" σε "Σύνδεση", το σενάριο εκτελείται πλέον χωρίς να ενεργοποιηθεί η Έξυπνη Αναγνώριση.
- Ομοίως, εάν οποιαδήποτε υποχρεωτική ή βοηθητική ιδιότητα σε ένα αντικείμενο υπό δοκιμή αλλάζει συχνά, αντικαταστήστε την με μια πιο σταθερή ιδιότητα για να διατηρήσετε την εκτέλεση του σεναρίου γρήγορη.
- Η τροποποίηση ιδιοτήτων είναι μια δεξιότητα που αποκτάται μέσω της εμπειρίας και βελτιώνεται όσο περισσότερο εργάζεστε με το εργαλείο.
Απενεργοποίηση Έξυπνης Αναγνώρισης με Χρήση VBScript
Η Έξυπνη Αναγνώριση μπορεί επίσης να απενεργοποιηθεί για μια ολόκληρη συνεδρία εκτέλεσης χωρίς να αγγίξετε το αποθετήριο αντικειμένων, χρησιμοποιώντας το ΑπενεργοποίησηΕπαναπαραγωγήςΧρήσηΑλγορίθμου ρύθμιση χρόνου εκτέλεσης. Αυτό είναι χρήσιμο όταν ένα σενάριο αποτυγχάνει αμέσως σε περίπτωση αναντιστοιχίας ιδιοτήτων αντί να επιστρέφει σιωπηλά στη διαδικασία εξάλειψης.
' Disable Smart Identification for this run session Setting("DisableReplayUsingAlgorithm") = 1 Browser("Mercury Tours").Page("Find Flights").WebEdit("userName").Set "mercury" ' Re-enable Smart Identification once the strict steps are done Setting("DisableReplayUsingAlgorithm") = 0
Διατηρήστε το απενεργοποιημένο παράθυρο όσο το δυνατόν πιο σύντομο. Τα βήματα που εκτελούνται μέσα σε αυτό πρέπει να αντιστοιχούν ακριβώς στην περιγραφή που έχουν μάθει, έτσι ώστε οποιαδήποτε νόμιμη απόκλιση στην εφαρμογή που δοκιμάζεται να προκαλέσει άμεση αποτυχία και όχι μια ομαλή εφεδρική λειτουργία.
Υποστηρικτικό υλικό
Κατεβάστε τις ιστοσελίδες που χρησιμοποιήθηκαν στο παραπάνω σεμινάριο για αυτοεξάσκηση

