Δοκιμή πολλαπλών προγραμμάτων περιήγησης χρησιμοποιώντας Selenium Πρόγραμμα οδήγησης Web

Δοκιμή πολλαπλών προγραμμάτων περιήγησης χρησιμοποιώντας Selenium

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

Δοκιμή πολλαπλών προγραμμάτων περιήγησης με χρήση Selenium

Γιατί χρειαζόμαστε Cross Browser Testing;

Οι εφαρμογές που βασίζονται στο Web είναι τελείως διαφορετικές από Windows εφαρμογές. Μια εφαρμογή Ιστού μπορεί να ανοίξει σε οποιοδήποτε πρόγραμμα περιήγησης από τον τελικό χρήστη. Για παράδειγμα, κάποιοι προτιμούν να ανοίγουν https://twitter.com in Firefox browser, ενώ άλλοι μπορούν να χρησιμοποιούν Πρόγραμμα περιήγησης Chrome or IE.

Στο παρακάτω διάγραμμα μπορείτε να παρατηρήσετε ότι σε IE, το πλαίσιο σύνδεσης του Twitter δεν εμφανίζει καμπύλη σε όλες τις γωνίες, αλλά μπορούμε να το δούμε στο πρόγραμμα περιήγησης Chrome.

Δοκιμή διαδικτυακού περιηγητή

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

Αυτό το κίνητρο μπορεί να εκπληρωθεί με το Cross Browser Δοκιμές του προϊόντος.

Λόγος Ζητήματα προγράμματος περιήγησης

  1. Αναντιστοιχία μεγέθους γραμματοσειράς σε διαφορετικά προγράμματα περιήγησης.
  2. JavaΗ υλοποίηση του σεναρίου μπορεί να είναι διαφορετική.
  3. Μπορεί να υπάρχει διαφορά επικύρωσης CSS, HTML.
  4. Κάποιο πρόγραμμα περιήγησης εξακολουθεί να μην υποστηρίζει HTML5.
  5. Στοίχιση σελίδας και μέγεθος div.
  6. Προσανατολισμός εικόνας.
  7. Ασυμβατότητα προγράμματος περιήγησης με λειτουργικό σύστημα. Και τα λοιπά.

Πώς να κάνετε δοκιμές μεταξύ προγραμμάτων περιήγησης

Αν χρησιμοποιούμε Selenium WebDriver, μπορούμε να αυτοματοποιήσουμε τις δοκιμαστικές περιπτώσεις χρησιμοποιώντας τον Internet Explorer, FireFox, Chrome, προγράμματα περιήγησης Safari.

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

Το testing.xml σας θα μοιάζει με αυτό,

Δοκιμή διαδικτυακού περιηγητή

Αυτό το testing.xml θα αντιστοιχιστεί με το Δοκιμαστική θήκη που θα μοιάζει έτσι

Δοκιμή διαδικτυακού περιηγητή

Εδώ επειδή το testing.xml έχει δύο δοκιμαστικές ετικέτες ("ChromeTest","FirefoxTest'), αυτή η περίπτωση δοκιμής θα εκτελεστεί δύο φορές για 2 διαφορετικά προγράμματα περιήγησης.

Η πρώτη δοκιμή «ChromeTest» θα μεταβιβάσει την τιμή της παραμέτρου «browser» ως «chrome» και το ChromeDriver θα εκτελεστεί. Αυτή η δοκιμαστική περίπτωση θα εκτελεστεί στο πρόγραμμα περιήγησης Chrome.

Δεύτερο τεστFirefoxΗ δοκιμή" θα περάσει την τιμή της παραμέτρου "πρόγραμμα περιήγησης" ως "Firefox' Έτσι FirefoxΟ οδηγός θα εκτελεστεί. Αυτή η δοκιμαστική περίπτωση θα εκτελεστεί στο FireFox περιήγησης.

Guru99CrossBrowserScript.java

Πλήρης κωδικός:

package parallelTest;

import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;

public class CrossBrowserScript {

	WebDriver driver;

	/**
	 * This function will execute before each Test tag in testng.xml
	 * @param browser
	 * @throws Exception
	 */
	@BeforeTest
	@Parameters("browser")
	public void setup(String browser) throws Exception{
		//Check if parameter passed from TestNG is 'firefox'
		if(browser.equalsIgnoreCase("firefox")){
		//create firefox instance
			System.setProperty("webdriver.gecko.driver", ".\\geckodriver.exe");
			driver = new FirefoxDriver();
		}
		//Check if parameter passed as 'chrome'
		else if(browser.equalsIgnoreCase("chrome")){
			//set path to chromedriver.exe
			System.setProperty("webdriver.chrome.driver",".\\chromedriver.exe");
			//create chrome instance
			driver = new ChromeDriver();
		}
		//Check if parameter passed as 'Edge'
				else if(browser.equalsIgnoreCase("Edge")){
					//set path to Edge.exe
					System.setProperty("webdriver.edge.driver",".\\MicrosoftWebDriver.exe");
					//create Edge instance
					driver = new EdgeDriver();
				}
		else{
			//If no browser passed throw exception
			throw new Exception("Browser is not correct");
		}
		driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
	}
	
	@Test
	public void testParameterWithXML() throws InterruptedException{
		driver.get("http://demo.guru99.com/V4/");
		//Find user name
		WebElement userName = driver.findElement(By.name("uid"));
		//Fill user name
		userName.sendKeys("guru99");
		//Find password
		WebElement password = driver.findElement(By.name("password"));
		//Fill password
		password.sendKeys("guru99");
	}
}

δοκιμή.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">

<suite name="TestSuite" thread-count="2" parallel="tests" >

<test name="ChromeTest">

<parameter name="browser" value="Chrome" />

<classes>

<class name="parallelTest.CrossBrowserScript">

</class>

</classes>

</test>

<test name="FirefoxTest">

<parameter name="browser" value="Firefox" />

<classes>

<class name="parallelTest.CrossBrowserScript">

</class>

</classes>

</test>

<test name="EdgeTest">

<parameter name="browser" value="Edge" />

<classes>

<class name="parallelTest.CrossBrowserScript">

</class>

</classes>

</test>

</suite>

ΣΗΜΕΊΩΣΗ: Για να εκτελέσετε τη δοκιμή, κάντε δεξί κλικ στο testing.xml, Επιλέξτε Εκτέλεση ως και κάντε κλικ TestNG

Δοκιμή διαδικτυακού περιηγητή

Σύνοψη

  1. Το Cross browser Testing είναι μια τεχνική για τη δοκιμή εφαρμογών ιστού με διαφορετικά προγράμματα περιήγησης ιστού.
  2. Selenium μπορεί να υποστηρίξει διαφορετικούς τύπους εργαλείο δοκιμής cross-browser για αυτοματισμό.
  3. Selenium μπορεί να ενσωματωθεί με TestNG για να εκτελέσετε τη δοκιμή πολλαπλών προγραμμάτων περιήγησης.
  4. Από τις παραμέτρους στο testing.xml μπορούμε να περάσουμε το όνομα του προγράμματος περιήγησης και σε μια δοκιμαστική περίπτωση, μπορούμε να δημιουργήσουμε αναφορά WebDriver ανάλογα.

Σημείωση: Το συγκεκριμένο πρόγραμμα δημιουργήθηκε και δοκιμάστηκε σε selenium 3.0.1, Chrome 56.0.2924.87, Firefox 47.0.2 & Microsoft Edge 14.14393. Εάν τα προγράμματα δίνουν σφάλμα, ενημερώστε το πρόγραμμα οδήγησης

Κατεβάστε το Selenium Αρχεία έργου για την επίδειξη σε αυτό το σεμινάριο