Πλαίσιο σεληνίου επιπέδου εμπειρογνωμόνων 2021

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

Ας χωρίσουμε αυτήν τη σειρά σεμιναρίων σε πολλαπλές ενότητες για να ολοκληρώσουμε το Selenium Framework Development με Java από το concept έως το προηγμένο επίπεδο.

Πλαίσιο σεληνίου
Πλαίσιο αυτοματισμού

Τύποι του Selenium Framework και τα χαρακτηριστικά τους

Διαφορετικοί τύποι Selenium Framework σχεδιάζονται και κατασκευάζονται λαμβάνοντας υπόψη τις ανάγκες εφαρμογής που θέλετε να αυτοματοποιήσετε. Κάθε διαφορετικός τύπος δοκιμής Το πλαίσιο αυτοματισμού έχει διαφορετικά χαρακτηριστικά και πλεονεκτήματα / μειονεκτήματα.

Μπορούμε να ταξινομήσουμε το Selenium Framework στους παρακάτω τομείς:

  • Πλαίσιο αυτοματοποίησης δοκιμής βάσει λέξεων-κλειδιών 
  • Πλαίσιο δοκιμής αυτοματοποίησης βάσει δεδομένων.
  • Υβριδικό πλαίσιο 
  • Πλαίσιο αυτοματισμού δοκιμής μοντέλου αντικειμένου σελίδας 
  • Πλαίσιο αυτοματισμού δοκιμής μοντέλου υβριδικής σελίδας 
  • Πλαίσιο αυτοματοποίησης δοκιμής ανάπτυξης βάσει συμπεριφοράς (BDD) 

Δοκιμή αυτοματισμού Selenium Framework

Πλαίσιο βάσει λέξεων-κλειδιών στο Σελήνιο

Τι είναι το πλαίσιο βάσει λέξεων-κλειδιών;

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

Πώς λειτουργεί το πλαίσιο βάσει λέξεων-κλειδιών: 

Όπως αναφέρθηκε παραπάνω, το KDF εξαρτάται ή σχεδιάζεται βάσει λέξεων-κλειδιών, οπότε τι είναι μια λέξη-κλειδί; 

Οι λέξεις-κλειδιά δεν είναι τίποτα άλλο από τις λέξεις δράσης ιστού (όπως click, type, mouseHover, switchFrame κ.λπ.), τώρα αποθηκεύετε αυτές τις λέξεις-κλειδιά σε Μερικά repo (ή ας πούμε σε αρχεία Excel) και για όλες τις ενέργειες της λέξης-κλειδιού καθορίζετε μια κλάση (που είναι το βοηθητικό πρόγραμμα WebAction χρησιμοποιώντας εντολές Selenium) και γράφετε συγκεκριμένες μέθοδοι για συγκεκριμένες λέξεις-κλειδιά.

Τώρα το επόμενο βήμα είναι βασικά από το σενάριό σας όταν αναφέρετε ας πούμε ότι κάνετε κλικ σε κάποιο webelement και, στην περίπτωση αυτή, η αντίστοιχη λειτουργία πηγαίνει στο Repo της λέξης-κλειδιού (εδώ στην περίπτωσή μας Excel και, στη συνέχεια, ανάλογα με τη λειτουργία καλεί τις αντίστοιχες μεθόδους που είχατε καθορίσει στην τάξη).

Επιπλέον, έχετε διαφορετικούς μηχανισμούς αναφοράς (ας πούμε reportNg ή Allure αναφορά ) το οποίο μπορείτε να ενσωματώσετε στο πλαίσιο Selenium για τη διαχείριση των αναφορών.

πλεονεκτήματα πλαισίου βάσει λέξεων-κλειδιών

  • Το KDF είναι εύκολο να σχεδιαστεί και να αναπτυχθεί 
  • Η πολυπλοκότητα και η κυκλωματική πολυπλοκότητα δεν είναι τόσο υψηλή 
  • Εύκολη συντήρηση και εντοπισμός σφαλμάτων.
  • Η κατασκευή KDF απαιτεί λιγότερη προσπάθεια και χρόνο και ελέγχεται από ένα μόνο σημείο ενεργοποίησης από τις λέξεις-κλειδιά.

μειονεκτήματα πλαισίου βάσει λέξεων-κλειδιών 

  • Το KDF δεν είναι ένα εξαντλητικό και προηγμένο πλαίσιο και δεν διαθέτει πολλά προηγμένα χαρακτηριστικά ενός πλαισίου που θα συζητήσουμε αργότερα.
  • Η ενοποίηση με διάφορα εργαλεία ανοιχτού κώδικα δεν είναι αρκετά ευέλικτη.
  • Δεν μπορεί να υποστηριχθεί ευρέως με διάφορα πλαίσια βάσει δεδομένων, δηλαδή το πλαίσιο που οδηγείται και απαιτείται για τη διαχείριση σύνθετων δεδομένων όπως Κείμενο εικόνας, YML, PDF.
  • Το πλαίσιο βάσει λέξεων-κλειδιών δεν είναι τόσο ασφαλές όσο το Πλαίσιο μοντέλου υβριδικού ή αντικειμένου σελίδας.

Πλαίσιο βάσει δεδομένων στο Σελήνιο 

Τι είναι το πλαίσιο βάσει δεδομένων;

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

Πώς λειτουργεί το πλαίσιο βάσει δεδομένων

Το Data Driven Framework έχει σχεδιαστεί για να χειρίζεται πολύπλοκους και διάφορους τύπους δεδομένων για την εκτέλεση του Αυτοματισμού της εφαρμογής.

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

Έτσι, τα δεδομένα οδηγούν τη ροή του αυτοματισμού όπου δοκιμάζονται τα ίδια σενάρια δοκιμών σε σχέση με διαφορετικά σύνολα δεδομένων και το DDF θα πρέπει να μπορεί να χειρίζεται διάφορους τύπους δεδομένων όπως Excel, CSV, YML, PDF, Text, DataBase, Image Data κ.λπ.

Έτσι μπορείτε να χρησιμοποιήσετε Πάροχος δεδομένων TestNG, δεδομένα παραμέτρων TestNG XML, διαχείριση σύνδεσης JDBC, διαχείριση δεδομένων PDF, YML χειριστής δεδομένων. 

Μπορείτε να χρησιμοποιήσετε το Tesseract OCR για εργασία με το χειρισμό δεδομένων εικόνας.

Πλεονεκτήματα πλαισίου βάσει δεδομένων 

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

Μειονεκτήματα πλαισίου βάσει δεδομένων

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

 

Υβριδικό πλαίσιο στο Selenium Automation

Τι είναι το υβριδικό πλαίσιο;

Το υβριδικό πλαίσιο στο σελήνιο είναι ένας τύπος πλαισίου σεληνίου το οποίο βασικά βασίζεται στο χαρακτηριστικό ή το σχεδιασμό λαμβάνοντας την έννοια του πλαισίου που βασίζεται σε λέξεις-κλειδιά και βάσει δεδομένων. 

Έτσι 

Υβριδικό πλαίσιο => Πλαίσιο βάσει δεδομένων + Πλαίσιο βάσει λέξεων-κλειδιών.

Πώς λειτουργεί το υβριδικό πλαίσιο

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

Μοντέλο αντικειμένου σελίδας - Πλαίσιο αυτοματισμού δοκιμής

Τι είναι το μοντέλο αντικειμένου σελίδας 

Το πλαίσιο Page Object Model όπως υποδηλώνει το όνομα, είναι βασικά ένα σχέδιο πλαισίου Selenium και αναπτύχθηκε γύρω από τα παρακάτω χαρακτηριστικά και έννοιες:

  • Ολόκληρη η Εφαρμογή Ιστού χωρίζεται σε διαφορετικές Ιστοσελίδες και αν μερικές φορές κάθε ιστοσελίδα έχει τεράστιες λειτουργίες, κατανέμεται ακόμη περισσότερο σε διαφορετικές Ενότητες σελίδας με βάση τις λειτουργίες. 
  • Τώρα κάθε Οι ενότητες σελίδας ή σελίδας αντιπροσωπεύουν μια ξεχωριστή κατηγορία(Τάξη Java).
  • Κάθε λειτουργικότητα σελίδας (π.χ. σύνδεση, εγγραφή κ.λπ. για τη σελίδα προορισμού) αντιπροσωπεύει διαφορετικές μεθόδους στην κλάση Java, οι οποίες σε κορμούς αντιπροσωπεύουν τις διαφορετικές μεθόδους σελίδας.
  • Οι εντοπιστές σελίδων δεν είναι παρά οι εντοπιστές για τις αντίστοιχες σελίδες / ενότητες και αναπτύχθηκαν και αποθηκεύτηκαν είτε από το Classic Page Factory είτε από το προσαρμοσμένο μοντέλο αντικειμένου σελίδας.
  • Βασικά από το Unit Test Framework (μέθοδος @ δοκιμής), καλούμε διαφορετικές μεθόδους σελίδας (δημιουργώντας τα αντικείμενα των τάξεων σελίδων) και τελικά διαφορετικές μέθοδοι σελίδων καλούν ξανά τους εντοπιστές σελίδων (στοιχεία Web αυτών των ιστοσελίδων) 

Γιατί μοντέλο αντικειμένου σελίδας || Πλεονεκτήματα ενός μοντέλου αντικειμένου σελίδας

Ο σχεδιασμός πλαισίου Model Object Model είναι ένα από τα πιο πρόσφατα μοντέλα πλαισίου που χρησιμοποιούνται στον κλάδο και συνοδεύεται από διάφορα προηγμένα χαρακτηριστικά μαζί με αυτό  

  • Καθώς η Εφαρμογή Ολόκληρου Ιστού χωρίζεται σε πολλές ιστοσελίδες / ενότητες σελίδων και τελικά σε διαφορετικές μεθόδους τάξης και σελίδας σελίδας Java, ως εκ τούτου είναι ευκολότερο να διατηρηθεί και να διορθωθεί ο κώδικας με κεντρικό τρόπο. Επομένως, σε περίπτωση αλλαγών στις συγκεκριμένες λειτουργίες της σελίδας, πρέπει μόνο να διατηρήσουμε τη συγκεκριμένη μέθοδο.
  • Οι εντοπιστές σελίδων αποθηκεύονται στη συγκεκριμένη τοποθεσία που αντιστοιχεί στις σελίδες / τις ενότητες, επομένως είναι ευκολότερο στην κύρια και εντοπισμό σφαλμάτων και επίσης σε περίπτωση οποιασδήποτε αλλαγής στα στοιχεία Web.
  • Το μοντέλο αντικειμένου σελίδας παρέχει το καλύτερο μοντέλο ασφάλειας όσον αφορά το επίπεδο πλαισίου αυτοματισμού, καθώς τα επίπεδα σελίδας συνδέονται χαλαρά και συγκεντρώνουν τον κώδικα (για τις αντίστοιχες κατηγορίες σελίδων).
  • Με τη σχεδίαση πλαισίου Μοντέλου Αντικειμένου Σελίδας, μπορείτε να υποστηρίξετε και να βελτιώσετε εξαντλητικά το υπάρχον πλαίσιο χωρίς να αλλάξετε πολλά στη σχεδίαση και να συνεχίσετε να προσθέτετε βοηθητικά προγράμματα και στοιχεία μαζί με αυτό για να χειριστείτε τη διαφορετική ενοποίηση.
  • Η ενσωμάτωση των εργαλείων τρίτου μέρους και της τεχνολογικής στοίβας είναι επίσης ευέλικτη.
  • Διαφορετικά εργαλεία και λειτουργίες αναφοράς μπορούν να συνδεθούν και να διαχειριστούν και να ελεγχθούν καλύτερα με τη σχεδίαση μοντέλου αντικειμένου σελίδας.
  • Μπορείτε να σχεδιάσετε το μοντέλο αντικειμένου σελίδας χρησιμοποιώντας την κλασική ιδέα εργοστασιακής σελίδας ή με την εφαρμογή της διεπαφής 

Θα δούμε πώς να σχεδιάσουμε το εξαντλητικό πλαίσιο αντικειμένου σελίδας εδώ.

Υβριδικό πλαίσιο αντικειμένου σελίδας Σελήνιο πλαίσιο

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

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

Θα σχεδιάσουμε εδώ το υβριδικό μοντέλο αντικειμένου σελίδας πλαίσιο. 

Πλαίσιο αυτοματοποίησης δοκιμής ανάπτυξης βάσει συμπεριφοράς (BDD) 

Το πλαίσιο BDD είναι ένα πλαίσιο Selenium όπου ο σχεδιασμός και η ροή του Αυτοματισμού καθοδηγούνται από τη συμπεριφορά.

Τι είναι το πλαίσιο BDD; 

Το πλαίσιο BDD ελέγχεται ή σχεδιάζεται με βάση τη συμπεριφορά των δοκιμαστικών περιπτώσεων ή των ενεργειών που εκτελούνται. 

Στο πλαίσιο BDD, χρησιμοποιούμε την αγγλική σαν γλώσσα που ονομάζεται Gherkin language, η οποία είναι το κινητήριο σημείο του πλαισίου. 

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

Απαιτούμενα εργαλεία και τεχνολογίες για το πλαίσιο αυτοματισμού

Το σελήνιο είναι ένα εργαλείο ανοιχτού κώδικα και δεν παρέχει ενσωματωμένο πλαίσιο μαζί με. Ως εκ τούτου, πρέπει να σχεδιάσετε και να αναπτύξετε το πλαίσιο Selenium μαζί με τα εργαλεία και τις τεχνολογίες. 

Θα μπορούσατε να χρησιμοποιήσετε τα εργαλεία για συνεργασία με το Selenium framework Development

  • Eclipse / Intellij Idea (ως IDE ανάπτυξης)
  • Jenkins (ως εργαλεία CI εάν θέλετε να δημιουργήσετε Αγωγός CICD με αυτοματισμό)
  • Maven / Gradle / Ant (ως α εργαλείο κατασκευής)
  • TestNg / JUnit (ως πλαίσιο δοκιμής μονάδας)
  • Δέσμες / βάζα σεληνίου (ως εξαρτήσεις σεληνίου)
  • Java / C # / Python (ως γλώσσα)
  • ReportNg / Extent Report / Allure (για δυνατότητες αναφοράς)
  • ELK στοίβα (αν θέλετε να δημιουργήσετε προηγμένο ΕΚΘΕΣΗ ΠΡΑΓΜΑΤΙΚΟΥ ΧΡΟΝΟΥ)
  • Graylog (αν θέλετε να δημιουργήσετε προηγμένος πίνακας ελέγχου καταγραφής πραγματικού χρόνου αλλιώς μπορείτε να χρησιμοποιήσετε το Log4J κ.λπ.)
  • Τεχνολογίες Tesseract OCR για αναγνώριση εικόνας και αυτοματοποίηση κειμένου εικόνας 
  • Fontbox, Pdfbox για δυνατότητες διαχείρισης δεδομένων PDF
  • Apache POI για διαχείριση δεδομένων Excel
  • Sikuli / AutoIt για χειρισμό περιπτώσεων αυτοματισμού αυτοματισμού εγγενών εφαρμογών.
  • Βιβλιοθήκες πελατών TestLink / Jira για τους σκοπούς της ενοποίησης εργαλείων TestCase Management με το πλαίσιο Αυτοματισμού 

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

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

Σχετικά με την Debarghya

Myself Debarghya Roy, είμαι ένας μηχανικός ARCHITECT που συνεργάζεται με την εταιρεία Fortune 5 και έναν συνεισφέροντα ανοιχτού κώδικα, έχοντας περίπου 12 χρόνια εμπειρίας / εμπειρίας σε διάφορες τεχνολογίες.
Έχω εργαστεί με διάφορες τεχνολογίες, όπως Java, C #, Python, Groovy, UI Automation (Selenium), Mobile Automation (Appium), API / Backend Automation, Performance Engineering (JMeter, Locust), Security Automation (MobSF, OwAsp, Kali Linux) , Astra, ZAP κ.λπ.), RPA, Αυτοματισμός Μηχανικής Διαδικασίας, Αυτοματισμός Mainframe, Ανάπτυξη Back End με SpringBoot, Kafka, Redis, RabitMQ, ELK stack, GrayLog, Jenkins και επίσης έχοντας εμπειρία σε Cloud Technologies, DevOps κ.λπ.
Ζω στο Μπανγκαλόρ της Ινδίας με τη γυναίκα μου και έχω πάθος για το Blogging, τη μουσική, την κιθάρα και η Φιλοσοφία της ζωής μου είναι η Εκπαίδευση για Όλους που γέννησε το LambdaGeeks. Ας συνδεθούμε μέσω συνδέσμου - https://www.linkedin.com/in/debarghya-roy/

Αφήστε ένα σχόλιο

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται *

Lambda Geeks