Επιλογές Chrome και επιθυμητές δυνατότητες στο Selenium Πρόγραμμα οδήγησης Web
Τι είναι η Κατηγορία Επιλογών Chrome;
Τα Διαχωριστικά Κατηγορία Chromeoptions είναι μια έννοια σε Selenium WebDriver για χειρισμό διαφόρων ιδιοτήτων του προγράμματος οδήγησης Chrome. Η κλάση επιλογών Chrome χρησιμοποιείται γενικά σε συνδυασμό με τις Επιθυμητές Δυνατότητες για την προσαρμογή των περιόδων λειτουργίας προγράμματος οδήγησης Chrome. Σας βοηθά να εκτελέσετε διάφορες λειτουργίες όπως το άνοιγμα του Chrome σε λειτουργία μεγιστοποίησης, την απενεργοποίηση των υπαρχουσών επεκτάσεων, την απενεργοποίηση των αναδυόμενων παραθύρων κ.λπ.
Παράδειγμα:
Το παρακάτω παράδειγμα δείχνει έναν τρόπο ανοίγματος του προγράμματος περιήγησης Chrome σε μεγιστοποιημένη λειτουργία χρησιμοποιώντας την τάξη ChromeOptions. Πρέπει να περάσουμε μια παρουσία της κλάσης ChromeOptions στην προετοιμασία του προγράμματος οδήγησης ιστού.
ChromeOptions options = new ChromeOptions() options.addArgument("start-maximized"); ChromeDriver driver = new ChromeDriver(options);
Παρακάτω είναι η λίστα με τα διαθέσιμα και τα πιο συχνά χρησιμοποιούμενα ορίσματα για την τάξη ChromeOptions
- εκκίνηση-μεγιστοποίηση: Ανοίγει το Chrome σε λειτουργία μεγιστοποίησης
- ινκόγκνιτο: Ανοίγει το Chrome σε κατάσταση ανώνυμης περιήγησης
- ακέφαλος: Ανοίγει το Chrome σε λειτουργία χωρίς κεφαλή
- απενεργοποίηση-επεκτάσεις: Απενεργοποιεί τις υπάρχουσες επεκτάσεις στο πρόγραμμα περιήγησης Chrome
- απενεργοποίηση-απενεργοποίηση αναδυόμενων παραθύρων: Απενεργοποιεί τα αναδυόμενα παράθυρα που εμφανίζονται στο πρόγραμμα περιήγησης Chrome
- make-default-browser: Ορίζει το Chrome ως προεπιλεγμένο πρόγραμμα περιήγησης
- εκδοχή: Εκτυπώνει την έκδοση του προγράμματος περιήγησης chrome
- απενεργοποίηση γραμμών πληροφοριών: Αποτρέπει το Chrome από την εμφάνιση της ειδοποίησης «Το Chrome ελέγχεται από αυτοματοποιημένο λογισμικό
Κατηγορία Επιθυμητών Ικανοτήτων
Κατηγορία Επιθυμητών Δυνατοτήτων χρησιμοποιείται για την τροποποίηση πολλαπλών ιδιοτήτων προγραμμάτων οδήγησης web. Παρέχει ζεύγη κλειδιών-τιμών για την αλλαγή μεμονωμένων ιδιοτήτων προγραμμάτων οδήγησης ιστού, όπως το όνομα του προγράμματος περιήγησης, την πλατφόρμα του προγράμματος περιήγησης, κ.λπ. Μια κοινή μέθοδος της κλάσης Desired Capabilities είναι η μέθοδος setCapability. Χρησιμοποιείται κυρίως με Selenium Πλέγμα, όπου η ίδια δοκιμαστική περίπτωση πρέπει να εκτελεστεί σε διαφορετικά προγράμματα περιήγησης.
Παράδειγμα:
Το παρακάτω παράδειγμα δείχνει τον τρόπο με τον οποίο μπορείτε να ενεργοποιήσετε το πρόγραμμα περιήγησης chrome να δέχεται πιστοποιητικά SSL σε ιστότοπους από προεπιλογή χρησιμοποιώντας τις Επιθυμητές Δυνατότητες για την κατηγορία Chrome.
// Create an object of desired capabilities class with Chrome driver DesiredCapabilities SSLCertificate = DesiredCapabilities.chrome(); // Set the pre defined capability – ACCEPT_SSL_CERTS value to true SSLCertificate.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true); // Open a new instance of chrome driver with the desired capability WebDriver driver = new ChromeDriver(SSLCertificate);
Παρακάτω είναι οι πιο συχνά χρησιμοποιούμενοι προκαθορισμένοι τύποι δυνατοτήτων.
Όνομα ικανότητας | Descriptιόν |
---|---|
ACCEPT_SSL_CERTS | Αυτή η ιδιότητα λέει στο πρόγραμμα περιήγησης να δέχεται πιστοποιητικά SSL από προεπιλογή |
ΠΛΑΤΦΟΡΜΑ_NAME | Αυτή η ιδιότητα χρησιμοποιείται για τον ορισμό της πλατφόρμας του λειτουργικού συστήματος που χρησιμοποιείται για την πρόσβαση στον ιστότοπο |
BROWSER_NAME | Αυτή η ιδιότητα χρησιμοποιείται για τον ορισμό του ονόματος προγράμματος περιήγησης για μια παρουσία προγράμματος οδήγησης ιστού |
ΕΚΔΟΣΗ | Αυτή η ιδιότητα χρησιμοποιείται για τον ορισμό της έκδοσης του προγράμματος περιήγησης |
Επιλογές Chrome για επέκταση Adblocker
Η επέκταση Adblocker του προγράμματος περιήγησης Chrome μπορεί να χειριστεί χρησιμοποιώντας τις Επιλογές ChromeDriver και την κλάση επιθυμητών δυνατοτήτων. Παρακάτω είναι τα βήματα για την πρόσβαση AdBlocker επέκταση στο πρόγραμμα περιήγησης Chrome χρησιμοποιώντας την κλάση Desired Capabilities.
Βήμα 1) AdBlockΗ επέκταση er πρέπει να εγκατασταθεί στο πρόγραμμα περιήγησης Chrome πριν χρησιμοποιήσετε την κλάση Επιλογών Chrome
Βήμα 2) Εξαγάγετε το αρχείο CRX που αντιστοιχεί AdBlocker επέκταση μέσω http://crxextractor.com/
Βήμα 3) Μεταβιβάστε τη διαδρομή του ληφθέντος αρχείου CRX στην τάξη Επιλογών Chrome
Βήμα 4) Δημιουργήστε το πρόγραμμα οδήγησης ιστού χρησιμοποιώντας την επιθυμητή κατηγορία δυνατοτήτων και τις Επιλογές Chrome στο Selenium αντικείμενο
Παράδειγμα:
Το παρακάτω παράδειγμα δείχνει πώς μπορείτε να ενεργοποιήσετε την επέκταση αποκλεισμού διαφημίσεων στο πρόγραμμα περιήγησης Chrome χρησιμοποιώντας την κατηγορία Επιλογές Chrome και Επιθυμητές Δυνατότητες.
ChromeOptions options = new ChromeOptions(); options.addExtensions(new File("Path to CRX File")); DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(ChromeOptions.CAPABILITY, options); ChromeDriver driver = new ChromeDriver(capabilities);
Εξαγωγή αρχείου CRX
Τα παρακάτω βήματα δείχνουν τη διαδικασία εξαγωγής αρχείου CRX μέσω του Ad Blocker μέσω του ιστότοπου – http://crxextractor.com/
Βήμα 1) Πηγαίνετε στο http://crxextractor.com/ και κάντε κλικ στο κουμπί έναρξης
Βήμα 2) Εισαγάγετε την επέκταση chrome – Διεύθυνση URL αποκλεισμού διαφημίσεων κάτω από το πλαίσιο κειμένου. Η διεύθυνση URL για το Adblock στο Chrome web store είναι https://chrome.google.com/webstore/detail/adblock-%E2%80%94-best-ad-blocker/gighmmpiobklfepjocnamgkkbiglidom
και κάντε κλικ στο ok
Βήμα 3) Κάνοντας κλικ στο κουμπί OK, η ετικέτα του κουμπιού θα αλλάξει σε Λήψη .CRX όπως παρακάτω. Κάντε κλικ στο κουμπί Λήψη .CRX, θα γίνει λήψη του αρχείου CRX που αντιστοιχεί στην επέκταση
Βήμα 4) Αποθηκεύστε το αρχείο στο τοπικό μηχάνημα, σημειώστε τη διαδρομή που αποθηκεύτηκε. Το επόμενο βήμα είναι να περάσετε την αποθηκευμένη διαδρομή στην κλάση Επιλογές Chrome
Δείγμα κώδικα:
- Θα δείτε διαφημίσεις στο
http://demo.guru99.com/
ως κατωτέρω
- Με AdBlocker επέκταση που είναι ενεργοποιημένη στις διαφημίσεις του προγράμματος περιήγησης Chrome θα πρέπει να είναι απενεργοποιημένη
package adblock; import java.io.File; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.remote.DesiredCapabilities; public class AdblockDemo { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver","X://chromedriver.exe"); ChromeOptions options = new ChromeOptions(); options.addExtensions(new File("X://extension_3_40_1_0.crx")); DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(ChromeOptions.CAPABILITY, options); options.merge(capabilities); ChromeDriver driver = new ChromeDriver(options); driver.get("http://demo.guru99.com/test/simple_context_menu.html"); driver.manage().window().maximize(); //driver.quit(); } }
Επεξήγηση κώδικα:
- Αρχικά, πρέπει να ορίσετε τη διαδρομή προς το αρχείο chromedriver.exe χρησιμοποιώντας τη μέθοδο set ιδιοτήτων, καθώς χρησιμοποιείτε το πρόγραμμα περιήγησης Chrome για δοκιμή
- Πρέπει να ορίσετε τη διαδρομή στο CRX File για να προσθέσετε τη μέθοδο επεκτάσεων
- Στη συνέχεια, πρέπει να δημιουργήσετε ένα αντικείμενο με τις Επιθυμητές Δυνατότητες του Chrome Selenium τάξη και περάστε το σε παράδειγμα προγράμματος οδήγησης web. Από Selenium Έκδοση 3.8.1, η κλάση δυνατοτήτων προγράμματος οδήγησης έχει καταργηθεί και πρέπει να συγχωνεύσετε το αντικείμενο δυνατοτήτων με το αντικείμενο Επιλογές Chrome πριν μεταβιβάσετε το ίδιο όρισμα στην κατασκευή προγράμματος οδήγησης Chrome
- Ανοίξτε τη διεύθυνση URL -
http://demo.guru99.com/test/simple_context_menu.html
με ενεργοποιημένη την επέκταση Ad Blocker - Μεγιστοποιήστε και κλείστε το πρόγραμμα περιήγησης
ΣΗΜΕΊΩΣΗ: Δίνουμε τη δυνατότητα AdBlocker επέκταση στο πρόγραμμα περιήγησης Chrome μέσω σεναρίου αυτοματισμού αντί της μη αυτόματης ενεργοποίησης της επέκτασης Adblocker στο πρόγραμμα περιήγησης Chrome. Το CRX File είναι ένας τρόπος πρόσβασης στην επέκταση αποκλεισμού διαφημίσεων χρησιμοποιώντας σενάριο αυτοματισμού
Παραγωγή:
Το πρόγραμμα περιήγησης Chrome θα ενεργοποιηθεί με AdBlockΗ επέκταση er ενεργοποιήθηκε όπως παρακάτω χωρίς διαφημίσεις
Επιλογές Chrome για κατάσταση ανώνυμης περιήγησης
Οι Επιλογές Chrome μπορούν να χρησιμοποιηθούν για κατάσταση ανώνυμης περιήγησης χρησιμοποιώντας το προκαθορισμένο όρισμα –ινκόγκνιτο.
Παρακάτω είναι το δείγμα κώδικα για να επιτευχθεί το ίδιο.
Δείγμα κώδικα:
package test; import java.io.File; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.remote.DesiredCapabilities; public class Incognito{ public static void main(String[] args) { // TODO Auto-generated method stub System.setProperty("webdriver.chrome.driver","X://chromedriver.exe"); ChromeOptions options = new ChromeOptions(); options.addArguments("--incognito"); DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(ChromeOptions.CAPABILITY, options); options.merge(capabilities); ChromeDriver driver = new ChromeDriver(options); driver.get("http://demo.guru99.com/test/simple_context_menu.html"); driver.manage().window().maximize(); //driver.quit(); } }
Επεξήγηση κώδικα:
- Αρχικά, πρέπει να ορίσετε τη διαδρομή προς το αρχείο chromedriver.exe χρησιμοποιώντας τη μέθοδο set ιδιοτήτων, καθώς χρησιμοποιείτε το πρόγραμμα περιήγησης Chrome για δοκιμή
- Στη συνέχεια, πρέπει να δημιουργήσετε ένα αντικείμενο της κλάσης Επιλογές Chrome και να το μεταβιβάσετε στην παρουσία προγράμματος οδήγησης ιστού. Εφόσον θέλουμε να ανοίξουμε το πρόγραμμα περιήγησης Chrome σε κατάσταση ανώνυμης περιήγησης, πρέπει να περάσετε το όρισμα –ανώνυμη περιήγηση στην κλάση Επιλογές Chrome.
- Στη συνέχεια, δημιουργήστε ένα αντικείμενο της κλάσης Desired Capabilities και συγχωνεύστε το αντικείμενο κατηγορίας Desired Capabilities με το αντικείμενο κλάσης Επιλογές Chrome χρησιμοποιώντας τη μέθοδο συγχώνευσης
- Πρέπει να δημιουργήσετε ένα αντικείμενο της κλάσης προγράμματος οδήγησης Chrome και να μεταβιβάσετε το αντικείμενο Επιλογές Chrome ως όρισμα
- Τέλος, πρέπει να περάσουμε τη διεύθυνση URL –
http://demo.guru99.com/test/simple_context_menu.html
στη μέθοδο driver.get - Μεγιστοποιήστε και κλείστε το πρόγραμμα περιήγησης
Παραγωγή:
Το παράθυρο του προγράμματος περιήγησης chrome θα ανοίξει σε κατάσταση ανώνυμης περιήγησης όπως παρακάτω
Επιλογές Chrome για Headless Chrome
Ένα πρόγραμμα περιήγησης Headless εκτελείται στο παρασκήνιο. Δεν θα δείτε το γραφικό περιβάλλον του προγράμματος περιήγησης ή τις λειτουργίες που έγιναν σε αυτό.
Οι Επιλογές Chrome για την εκτέλεση του προγράμματος περιήγησης Chrome σε λειτουργία χωρίς κεφαλή μπορούν να ολοκληρωθούν χρησιμοποιώντας τα προκαθορισμένα ορίσματα –ακέφαλος.
Δείγμα κώδικα για την επίτευξή του αναφέρεται παρακάτω.
Παράδειγμα:
package test; import java.io.File; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.remote.DesiredCapabilities; public class HeadlessModeDemo { public static void main(String[] args) { // TODO Auto-generated method stub System.setProperty("webdriver.chrome.driver","X://chromedriver.exe"); ChromeOptions options = new ChromeOptions(); options.addArguments("--headless"); DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(ChromeOptions.CAPABILITY, options); options.merge(capabilities); ChromeDriver driver = new ChromeDriver(options); driver.get("http://demo.guru99.com/"); driver.manage().window().maximize(); String title = driver.getTitle(); System.out.println("Page Title: " +title); driver.quit(); } }
Επεξήγηση κώδικα:
- Αρχικά, πρέπει να ορίσετε τη διαδρομή προς το αρχείο chromedriver.exe χρησιμοποιώντας τη μέθοδο set ιδιοτήτων, καθώς χρησιμοποιείτε το πρόγραμμα περιήγησης Chrome για δοκιμή
- Στη συνέχεια, δημιουργήστε ένα αντικείμενο της κλάσης Επιλογές Chrome και περάστε το στην παρουσία προγράμματος οδήγησης ιστού. Εφόσον θέλουμε να ανοίξουμε το πρόγραμμα περιήγησης Chrome σε λειτουργία χωρίς κεφαλή, πρέπει να περάσουμε το όρισμα –headless στην κατηγορία Επιλογές Chrome.
- Δημιουργήστε ένα αντικείμενο της κλάσης DesiredCapabilities Chrome και συγχωνεύστε το αντικείμενο κλάσης Desired Capabilities με το αντικείμενο κλάσης Chrome Options χρησιμοποιώντας τη μέθοδο συγχώνευσης
- Δημιουργήστε ένα αντικείμενο κατηγορίας προγράμματος οδήγησης Chrome και περάστε τις Επιλογές του Chrome Selenium αντικείμενο ως επιχείρημα
- Τέλος, πρέπει να περάσουμε τη διεύθυνση URL –
http://demo.guru99.com/
στη μέθοδο driver.get - Εκτυπώστε τον τίτλο της σελίδας και κλείστε το πρόγραμμα περιήγησης
Παραγωγή
Το πρόγραμμα περιήγησης δεν θα είναι ορατό για τον παραπάνω κώδικα, καθώς το Chrome θα λειτουργεί σε λειτουργία Headless. Ο τίτλος της σελίδας θα ληφθεί και θα εμφανιστεί όπως παρακάτω.
Σύνοψη
- Selenium Η κλάση "Επιλογές Chrome" χρησιμοποιείται για τον χειρισμό διαφόρων ιδιοτήτων του προγράμματος οδήγησης Chrome
- Η κλάση Desired Chrome Capabilities παρέχει ένα σύνολο ζευγών κλειδιών-τιμών για την τροποποίηση μεμονωμένων ιδιοτήτων του προγράμματος οδήγησης ιστού, όπως το όνομα του προγράμματος περιήγησης, την πλατφόρμα του προγράμματος περιήγησης κ.λπ.
- Για να χειριστείτε τυχόν επεκτάσεις του προγράμματος περιήγησης Chrome, το αρχείο CRX που αντιστοιχεί στην επέκταση πρέπει να εξαχθεί και να προστεθεί στην κατηγορία Επιλογές Chrome
- Το –incognito και το –headless είναι προκαθορισμένα ορίσματα που παρέχονται από την κλάση του Chrome Options για τη χρήση του προγράμματος περιήγησης Chrome σε κατάσταση ανώνυμης περιήγησης και χωρίς κεφαλή