Selenium Core Extensions (User-Extensions.js)

Πίνακας περιεχομένων:

Anonim

Για να κατανοήσετε τις επεκτάσεις, ας κατανοήσουμε πρώτα τους τρεις πυλώνες του σεληνίου IDE

  1. Ενέργεια: Τι λειτουργία εκτελείτε στην οθόνη UI

  2. Αξιολογητές / Δήλωση: Τι επαλήθευση κάνετε σε δεδομένα που λαμβάνετε από το περιβάλλον εργασίας χρήστη

  1. Στρατηγική εντοπισμού: Πώς μπορούμε να βρούμε το στοιχείο στη διεπαφή χρήστη.

Τώρα, το Selenium IDE διαθέτει μια πολύ ώριμη βιβλιοθήκη με πολλές ενέργειες, ισχυρισμούς / αξιολογητές και στρατηγικές εντοπισμού.

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

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

Απαίτηση για δημιουργία επέκτασης χρήστη Selenium:

Για να δημιουργήσουμε μια επέκταση χρήστη για το Selenium IDE, πρέπει να γνωρίζουμε τη βασική ιδέα του πρωτότυπου αντικειμένου JavaScript και Java Script.

Για να δημιουργήσετε την επέκταση χρήστη, πρέπει να δημιουργήσετε μεθόδους σεναρίου Java και να τις προσθέσετε στο πρωτότυπο αντικειμένου σεληνίου και στο πρωτότυπο αντικειμένου PageBot.

Πώς αναγνωρίζει το Selenium IDE την επέκταση χρήστη;

Μετά την προσθήκη της επέκτασης χρήστη στο Selenium IDE όταν ξεκινάμε το Selenium IDE, όλες αυτές οι επεκτάσεις σε πρωτότυπο javascript φορτώνονται και το Selenium IDE τις αναγνωρίζει με το όνομά τους.

Τρόπος δημιουργίας επέκτασης χρήστη

Βήμα 1) Ενέργεια - όλες οι ενέργειες ξεκινούν από το "do", δηλαδή εάν η ενέργεια είναι για κεφαλαίο κείμενο από το όνομά του θα είναι doTextUpperCase. Όταν προσθέτουμε αυτήν τη μέθοδο δράσης στο Selenium IDE, το ίδιο το Selenium IDE θα δημιουργήσει μια μέθοδο αναμονής για αυτήν την ενέργεια. Έτσι, σε αυτήν την περίπτωση όταν δημιουργούμε ενέργεια doTextUpperCase , το Selenium IDE θα δημιουργήσει μια αντίστοιχη συνάρτηση αναμονής ως TextUpperCaseAndWait . Μπορεί να δεχτεί δύο παραμέτρους

Παράδειγμα: Ενέργεια κειμένου κεφαλαίων

Selenium.prototype.doTextUpperCase = συνάρτηση (εντοπιστής, κείμενο) {// Εδώ το findElement είναι το ίδιο ικανό να χειριστεί όλους τους τύπους εντοπισμού (xpath, css, name, id, className), Απλώς πρέπει να περάσουμε το κείμενο εντοπισμούvar element = this.page (). findElement (εντοπιστής);// Δημιουργήστε το κείμενο προς πληκτρολόγησηtext = text.toUpperCase ();// Αντικαταστήστε το κείμενο του στοιχείου με το νέο κείμενοthis.page (). ReplText (στοιχείο, κείμενο);};

Βήμα 2) Αξιολογητές / Δήλωση - Όλοι οι αξιολογητές που είναι εγγεγραμμένοι σε πρωτότυπο αντικειμένου σεληνίου θα προτάσσονται

από "get" ή "is" Ex. getValueFromCompoundTable, isValueFromCompoundTable. Μπορεί να δεχτεί δύο παραμέτρους, μία για στόχο και άλλη για πεδίο τιμής σε περίπτωση δοκιμής.

Για κάθε Αξιολογητή, θα υπάρχουν αντίστοιχες συναρτήσεις επαλήθευσης που θα προτάσσονται από "επαλήθευση", "επιβεβαίωση" και το πρόθεμα συνάρτησης αναμονής από "waitFor"

Παράδειγμα: Για αξιολογητές κεφαλαίων κεφαλαίων

Selenium.prototype.assertTextUpperCase = συνάρτηση (εντοπιστής, κείμενο) {// Όλες οι στρατηγικές εντοπισμού χειρίζονται αυτόματα από το "findElement"var element = this.page (). findElement (εντοπιστής);// Δημιουργήστε το κείμενο για επαλήθευσηtext = text.toUpperCase ();// Λάβετε την πραγματική τιμή του στοιχείουvar actualValue = element.value;// Βεβαιωθείτε ότι η πραγματική τιμή ταιριάζει με το αναμενόμενοAssert.matches (αναμενόμενη τιμή, πραγματική τιμή);};Selenium.prototype.isTextEqual = συνάρτηση (εντοπιστής, κείμενο) {επιστρέψτε αυτό.getText (εντοπιστής) .value === κείμενο;};Selenium.prototype.getTextValue = συνάρτηση (εντοπιστής, κείμενο) {επιστρέψτε αυτό.getText (εντοπιστής). τιμή;};

Βήμα 3) Στρατηγική εντοπισμού - Εάν θέλουμε να δημιουργήσουμε τη δική μας λειτουργία για να εντοπίσουμε ένα στοιχείο τότε

πρέπει να επεκτείνουμε το πρωτότυπο PageBot με μια συνάρτηση με το πρόθεμα "locateElementBy."

Θα πάρει δύο παραμέτρους, η πρώτη θα είναι η συμβολοσειρά εντοπισμού και η δεύτερη θα είναι το έγγραφο

όπου πρέπει να αναζητηθεί.

Παράδειγμα: Για εντοπισμό κειμένου κεφαλαίων κεφαλαίων

// Το "inDocument" είναι ένα έγγραφο που αναζητάτε.PageBot.prototype.locateElementByUpperCase = συνάρτηση (κείμενο, inDocument) {// Δημιουργήστε το κείμενο για αναζήτησηvar expectValue = text.toUpperCase ();// Εξετάστε όλα τα στοιχεία, αναζητώντας αυτά που έχουν// a value === η αναμενόμενη τιμή μαςvar allElements = inDocument.getElementsByTagName ("*");// Αυτό το αστέρι '*' είναι ένα είδος κανονικής έκφρασης που θα περάσει από κάθε στοιχείο (σε HTML DOM, κάθε στοιχείο έχει σίγουρα ένα όνομα ετικέτας όπως , ,

, , ,
κ.λπ.). Εδώ το κίνητρό μας είναι να βρούμε ένα στοιχείο που να ταιριάζει με το κείμενο κεφαλαίων που έχουμε περάσει, οπότε θα το αναζητήσουμε με όλα τα στοιχεία και όταν ταιριάσουμε θα έχουμε το σωστό στοιχείο ιστού.για (var i = 0; i

Πώς να χρησιμοποιήσετε την πρόσφατα δημιουργημένη επέκταση πυρήνα

  1. Μεταβείτε στο Selenium IDE

    Κάντε κλικ στο Επιλογές -> Επιλογές…

  1. Στην ενότητα Γενικά επιλέξτε τη θέση της νέας επέκτασης Selenium Core Extension

  2. Κάντε κλικ στο OK και επανεκκινήστε το Selenium IDE

  1. Θα βρείτε την επέκταση στη λίστα εντολών

Ακολουθεί μια λίστα με τις δημοφιλείς επεκτάσεις / plug-in που χρησιμοποιούνται στο Selenium IDE

Ονομα Σκοπός
Αγαπημένα Για να επισημάνετε μια δοκιμαστική σουίτα ως αγαπημένη και να τις εκτελέσετε με ένα κλικ
Flex Pilot Χ Για αυτοματοποιημένο Flex
FlexMonkium Για δοκιμή εγγραφής και αναπαραγωγής με βάση το Adobe Flex στο Selenium IDE
Καταγραφή αρχείων Για αποθήκευση αρχείων καταγραφής σε αρχείο
Έλεγχος ροής Για τον έλεγχο της ροής εκτέλεσης δοκιμής
Επισημάνετε τα στοιχεία Για να επισημάνετε ένα στοιχείο ελέγχου ιστού
Σιωπηρή αναμονή Για να περιμένετε ένα στοιχείο για συγκεκριμένο χρονικό όριο
Αποτυχία οθόνης Τραβήξτε ένα στιγμιότυπο οθόνης για αποτυχία
Αποτελέσματα δοκιμής Αποθηκεύστε το αποτέλεσμα της δοκιμαστικής θήκης για μια δοκιμαστική σουίτα με ένα κλικ

Μπορείτε να τα πάρετε όλα αυτά και πολλά άλλα από την ενότητα λήψης του επίσημου ιστότοπου του SeleniumHQ

http://docs.seleniumhq.org/download/

Περίληψη:

  • Υπάρχει τρία μέρη της στρατηγικής Selenium IDE, Action, Assassers / Assertion, Locator.
  • Η επέκταση χρήστη δημιουργείται, όταν το Selenium IDE δεν πληροί την τρέχουσα απαίτηση.
  • Για να δημιουργήσετε επέκταση χρήστη απαιτείται να προσθέσετε javascript στο πρωτότυπο αντικειμένου του σεληνίου.
  • Μετά τη δημιουργία επέκτασης, απαιτείται να το προσθέσετε στο Selenium IDE και να επανεκκινήσετε το IDE.

Κατεβάστε την επέκταση πυρήνα Selenium που χρησιμοποιείται σε αυτό το σεμινάριο