Επιλογές Chrome και επιθυμητές δυνατότητες στο Selenium Πρόγραμμα οδήγησης Web

Τι είναι η Κατηγορία Επιλογών Chrome;

Η Κατηγορία Chromeoptions είναι μια έννοια σε Selenium WebDriver για χειρισμό διαφόρων ιδιοτήτων του προγράμματος οδήγησης Chrome. Η κλάση επιλογών Chrome χρησιμοποιείται γενικά σε συνδυασμό με τις Επιθυμητές Δυνατότητες για την προσαρμογή των περιόδων λειτουργίας προγράμματος οδήγησης Chrome. Σας βοηθά να εκτελέσετε διάφορα operaλειτουργίες όπως το άνοιγμα του Chrome σε λειτουργία μεγιστοποίησης, η απενεργοποίηση των υπαρχουσών επεκτάσεων, η απενεργοποίηση των αναδυόμενων παραθύρων κ.λπ.

Παράδειγμα:

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

ChromeOptions options = new ChromeOptions()
options.addArgument("start-maximized");
ChromeDriver driver = new ChromeDriver(options);

Παρακάτω είναι η λίστα με τα διαθέσιμα και τα πιο συχνά χρησιμοποιούμενα ορίσματα για την τάξη ChromeOptions

  • εκκίνηση-μεγιστοποίηση: Ανοίγει το Chrome σε λειτουργία μεγιστοποίησης
  • ινκόγκνιτο: Ανοίγει το Chrome σε κατάσταση ανώνυμης περιήγησης
  • ακέφαλος: Ανοίγει το Chrome σε λειτουργία χωρίς κεφαλή
  • απενεργοποίηση-επεκτάσεις: Απενεργοποιεί τις υπάρχουσες επεκτάσεις στο πρόγραμμα περιήγησης Chrome
  • απενεργοποίηση-απενεργοποίηση αναδυόμενων παραθύρων: Απενεργοποιεί την εμφάνιση αναδυόμενων παραθύρωνyed στο πρόγραμμα περιήγησης 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);

Παρακάτω είναι οι πιο συχνά χρησιμοποιούμενοι προκαθορισμένοι τύποι δυνατοτήτων.

Όνομα ικανότητας Περιγραφή
ACCEPT_SSL_CERTS Αυτή η ιδιότητα λέει στο πρόγραμμα περιήγησης να δέχεται πιστοποιητικά SSL από προεπιλογή
ΠΛΑΤΦΟΡΜΑ_NAME Αυτή η ιδιότητα χρησιμοποιείται για τον ορισμό του operaπλατφόρμα συστήματος ting που χρησιμοποιείται για την πρόσβαση στον ιστότοπο
BROWSER_NAME Αυτή η ιδιότητα χρησιμοποιείται για τον ορισμό του ονόματος προγράμματος περιήγησης για μια παρουσία προγράμματος οδήγησης ιστού
ΕΚΔΟΣΗ Αυτή η ιδιότητα χρησιμοποιείται για τον ορισμό της έκδοσης του προγράμματος περιήγησης

Επιλογές Chrome για Adblocker επέκταση

AdblockΗ επέκταση του προγράμματος περιήγησης 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/ και κάντε κλικ στο κουμπί έναρξης

Εξαγωγή αρχείου CRX

Βήμα 2) Εισαγάγετε την επέκταση chrome – Διεύθυνση URL αποκλεισμού διαφημίσεων κάτω από το κείμενοbox. URL για Adblock στο Chrome web store είναι https://chrome.google.com/webstore/detail/adblock-%E2%80%94-best-ad-blocker/gighmmpiobklfepjocnamgkkbiglidom

και κάντε κλικ στο ok

Εξαγωγή αρχείου CRX

Βήμα 3) Κάνοντας κλικ στο κουμπί OK, η ετικέτα του κουμπιού θα αλλάξει σε Λήψη .CRX όπως παρακάτω. Κάντε κλικ στο κουμπί Λήψη .CRX, θα γίνει λήψη του αρχείου CRX που αντιστοιχεί στην επέκταση

Εξαγωγή αρχείου CRX

Βήμα 4) Αποθηκεύστε το αρχείο στο τοπικό μηχάνημα, σημειώστε τη διαδρομή που αποθηκεύτηκε. Το επόμενο βήμα είναι να περάσετε την αποθηκευμένη διαδρομή στην κλάση Επιλογές Chrome

Δείγμα κώδικα:

  1. Θα δείτε διαφημίσεις στο http://demo.guru99.com/ ως κατωτέρω

Εξαγωγή αρχείου CRX

  1. Με 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();
	}
	
}

Επεξήγηση κώδικα:

  1. Αρχικά, πρέπει να ορίσετε τη διαδρομή προς το αρχείο chromedriver.exe χρησιμοποιώντας τη μέθοδο set ιδιοτήτων, καθώς χρησιμοποιείτε το πρόγραμμα περιήγησης Chrome για δοκιμή
  2. Πρέπει να ορίσετε τη διαδρομή στο CRX File για να προσθέσετε τη μέθοδο επεκτάσεων
  3. Στη συνέχεια, πρέπει να δημιουργήσετε ένα αντικείμενο με τις Επιθυμητές Δυνατότητες του Chrome Selenium τάξη και περάστε το σε παράδειγμα προγράμματος οδήγησης web. Από Selenium Έκδοση 3.8.1, η κλάση δυνατοτήτων προγράμματος οδήγησης έχει καταργηθεί και πρέπει να συγχωνεύσετε το αντικείμενο δυνατοτήτων με το αντικείμενο Επιλογές Chrome πριν μεταβιβάσετε το ίδιο όρισμα στην κατασκευή προγράμματος οδήγησης Chrome
  4. Ανοίξτε τη διεύθυνση URL - http://demo.guru99.com/test/simple_context_menu.html με ενεργοποιημένη την επέκταση Ad Blocker
  5. Μεγιστοποιήστε και κλείστε το πρόγραμμα περιήγησης

ΣΗΜΕΊΩΣΗ: Δίνουμε τη δυνατότητα AdBlocker επέκταση στο πρόγραμμα περιήγησης Chrome μέσω σεναρίου αυτοματισμού αντί για μη αυτόματη ενεργοποίηση Adblocker επέκταση στο πρόγραμμα περιήγησης Chrome. Το CRX File είναι ένας τρόπος πρόσβασης στην επέκταση αποκλεισμού διαφημίσεων χρησιμοποιώντας σενάριο αυτοματισμού

Παραγωγή:

Το πρόγραμμα περιήγησης Chrome θα ενεργοποιηθεί με AdBlockΗ επέκταση er ενεργοποιήθηκε όπως παρακάτω χωρίς διαφημίσεις

Εξαγωγή αρχείου CRX

Επιλογές 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();
	}
	}

Επεξήγηση κώδικα:

  1. Αρχικά, πρέπει να ορίσετε τη διαδρομή προς το αρχείο chromedriver.exe χρησιμοποιώντας τη μέθοδο set ιδιοτήτων, καθώς χρησιμοποιείτε το πρόγραμμα περιήγησης Chrome για δοκιμή
  2. Στη συνέχεια, πρέπει να δημιουργήσετε ένα αντικείμενο της κλάσης Επιλογές Chrome και να το μεταβιβάσετε στην παρουσία προγράμματος οδήγησης ιστού. Εφόσον θέλουμε να ανοίξουμε το πρόγραμμα περιήγησης Chrome σε κατάσταση ανώνυμης περιήγησης, πρέπει να περάσετε το όρισμα –ανώνυμη περιήγηση στην κλάση Επιλογές Chrome.
  3. Στη συνέχεια, δημιουργήστε ένα αντικείμενο της κλάσης Desired Capabilities και συγχωνεύστε το αντικείμενο κατηγορίας Desired Capabilities με το αντικείμενο κλάσης Επιλογές Chrome χρησιμοποιώντας τη μέθοδο συγχώνευσης
  4. Πρέπει να δημιουργήσετε ένα αντικείμενο της κλάσης προγράμματος οδήγησης Chrome και να μεταβιβάσετε το αντικείμενο Επιλογές Chrome ως όρισμα
  5. Τέλος, πρέπει να περάσουμε τη διεύθυνση URL – http://demo.guru99.com/test/simple_context_menu.html στη μέθοδο driver.get
  6. Μεγιστοποιήστε και κλείστε το πρόγραμμα περιήγησης

Παραγωγή:

Το παράθυρο του προγράμματος περιήγησης chrome θα ανοίξει σε κατάσταση ανώνυμης περιήγησης όπως παρακάτω

Επιλογές Chrome για κατάσταση ανώνυμης περιήγησης

Επιλογές Chrome για Headless Chrome

Ένα πρόγραμμα περιήγησης Headless εκτελείται στο παρασκήνιο. Δεν θα δείτε το GUI του προγράμματος περιήγησης ή το operaέγιναν operaέπεσε πάνω του.

Οι Επιλογές 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();
		}


}

Επεξήγηση κώδικα:

  1. Αρχικά, πρέπει να ορίσετε τη διαδρομή προς το αρχείο chromedriver.exe χρησιμοποιώντας τη μέθοδο set ιδιοτήτων, καθώς χρησιμοποιείτε το πρόγραμμα περιήγησης Chrome για δοκιμή
  2. Στη συνέχεια, δημιουργήστε ένα αντικείμενο της κλάσης Επιλογές Chrome και περάστε το στην παρουσία προγράμματος οδήγησης ιστού. Εφόσον θέλουμε να ανοίξουμε το πρόγραμμα περιήγησης Chrome σε λειτουργία χωρίς κεφαλή, πρέπει να περάσουμε το όρισμα –headless στην κατηγορία Επιλογές Chrome.
  3. Δημιουργήστε ένα αντικείμενο της κλάσης DesiredCapabilities Chrome και συγχωνεύστε το αντικείμενο κλάσης Desired Capabilities με το αντικείμενο κλάσης Chrome Options χρησιμοποιώντας τη μέθοδο συγχώνευσης
  4. Δημιουργήστε ένα αντικείμενο κατηγορίας προγράμματος οδήγησης Chrome και περάστε τις Επιλογές του Chrome Selenium αντικείμενο ως επιχείρημα
  5. Τέλος, πρέπει να περάσουμε τη διεύθυνση URL – http://demo.guru99.com/ στη μέθοδο driver.get
  6. Εκτυπώστε τον τίτλο της σελίδας και κλείστε το πρόγραμμα περιήγησης

Παραγωγή

Το πρόγραμμα περιήγησης δεν θα είναι ορατό για τον παραπάνω κώδικα, καθώς το Chrome θα λειτουργεί σε λειτουργία Headless. Ο τίτλος της σελίδας θα ληφθεί και θα εμφανίζεταιyed ως κατωτέρω.

Επιλογές Chrome για Headless Chrome

Χαρακτηριστικά

  • Selenium Η κλάση "Επιλογές Chrome" χρησιμοποιείται για τον χειρισμό διαφόρων ιδιοτήτων του προγράμματος οδήγησης Chrome
  • Η κλάση Desired Chrome Capabilities παρέχει ένα σύνολο ζευγών κλειδιών-τιμών για την τροποποίηση μεμονωμένων ιδιοτήτων του προγράμματος οδήγησης ιστού, όπως το όνομα του προγράμματος περιήγησης, την πλατφόρμα του προγράμματος περιήγησης κ.λπ.
  • Για να χειριστείτε τυχόν επεκτάσεις του προγράμματος περιήγησης Chrome, το αρχείο CRX που αντιστοιχεί στην επέκταση πρέπει να εξαχθεί και να προστεθεί στην κατηγορία Επιλογές Chrome
  • Το –incognito και το –headless είναι προκαθορισμένα ορίσματα που παρέχονται από την κλάση του Chrome Options για τη χρήση του προγράμματος περιήγησης Chrome σε κατάσταση ανώνυμης περιήγησης και χωρίς κεφαλή