Selenium Pilote Web Java Exemple de programme

Selenium Java Exemple

Le Java classe ยซ myclass ยป que nous avons crรฉรฉe dans le tutoriel prรฉcรฉdent, essayons de crรฉer un script WebDriver qui :

ร‰tape 1 : rapporter Mercury Page d'accueil des visites
ร‰tape 2 : vรฉrifier son titre
ร‰tape 3 : imprimer le rรฉsultat de la comparaison
ร‰tape 4 : fermez-le avant de terminer tout le programme.

Selenium Exemple de WebDriver Code

Vous trouverez ci-dessous le code WebDriver rรฉel pour la logique prรฉsentรฉe par le scรฉnario ci-dessus

package newproject;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
//comment the above line and uncomment below line to use Chrome
//import org.openqa.selenium.chrome.ChromeDriver;
public class PG1 {


    public static void main(String[] args) {
        // declaration and instantiation of objects/variables
    	System.setProperty("webdriver.gecko.driver","C:\\geckodriver.exe");
		WebDriver driver = new FirefoxDriver();
		//comment the above 2 lines and uncomment below 2 lines to use Chrome
		//System.setProperty("webdriver.chrome.driver","G:\\chromedriver.exe");
		//WebDriver driver = new ChromeDriver();
    	
        String baseUrl = "https://demo.guru99.com/test/newtours/";
        String expectedTitle = "Welcome: Mercury Tours";
        String actualTitle = "";

        // launch Fire fox and direct it to the Base URL
        driver.get(baseUrl);

        // get the actual value of the title
        actualTitle = driver.getTitle();

        /*
         * compare the actual title of the page with the expected one and print
         * the result as "Passed" or "Failed"
         */
        if (actualTitle.contentEquals(expectedTitle)){
            System.out.println("Test Passed!");
        } else {
            System.out.println("Test Failed");
        }
       
        //close Fire fox
        driver.close();
    }

}

Remarque : Dรฉmarrage Firefox 35, vous devez utiliser le pilote gecko crรฉรฉ par Mozilla pour utiliser Web Driver. Selenium 3.0, gecko et firefox ont des problรจmes de compatibilitรฉ et les configurer correctement peut devenir une tรขche ardue. Si le code ne fonctionne pas, rรฉtrogradez vers Firefox version 47 ou infรฉrieure. Alternativement, vous pouvez exรฉcuter vos scripts sur Chrome. Selenium fonctionne immรฉdiatement pour Chrome. Il vous suffit de modifier 3 lignes de code pour que votre script fonctionne avec Chrome ou Firefox

Explication du code

Importation de packages

Pour commencer, vous devez importer les deux packages suivants :

  1. org.openqa.selenium.*โ€“ contient la classe WebDriver nรฉcessaire pour instancier un nouveau navigateur chargรฉ avec un pilote spรฉcifique
  2. org.openqa.selenium.firefox.FirefoxChauffeur โ€“ contient le FirefoxClasse de pilote nรฉcessaire pour instancier un Firefox-pilote spรฉcifique sur le navigateur instanciรฉ par la classe WebDriver

Si votre test nรฉcessite des actions plus compliquรฉes telles que l'accรจs ร  une autre classe, la prise de captures d'รฉcran du navigateur ou la manipulation de fichiers externes, vous devrez certainement importer davantage de packages.

Instanciation d'objets et de variables

Normalement, cโ€™est ainsi quโ€™un objet pilote est instanciรฉ.

WebDriver driver = new FirefoxDriver();

A FirefoxLa classe de pilote sans paramรจtres signifie que la valeur par dรฉfaut Firefox profil sera lancรฉ par notre Java programme. La valeur par dรฉfaut Firefox le profil est similaire au lancement Firefox en mode sans รฉchec (aucune extension n'est chargรฉe).

Pour plus de commoditรฉ, nous avons enregistrรฉ l'URL de base et le titre attendu en tant que variables.

Lancement d'une session de navigateur

WebDriver's get () La mรฉthode est utilisรฉe pour lancer une nouvelle session de navigateur et la dirige vers l'URL que vous spรฉcifiez comme paramรจtre.

driver.get(baseUrl);

Obtenez le titre rรฉel de la page

La classe WebDriver a le getTitle () mรฉthode qui est toujours utilisรฉe pour obtenir le titre de la page actuellement chargรฉe.

actualTitle = driver.getTitle();

Comparez les valeurs attendues et rรฉelles

Cette partie du code utilise simplement une base Java structure if-else pour comparer le titre rรฉel avec celui attendu.

if (actualTitle.contentEquals(expectedTitle)){
            System.out.println("Test Passed!");
        } else {
            System.out.println("Test Failed");
        }

Terminer une session de navigateur

L'รฉvรฉnement Fermer()" La mรฉthode est utilisรฉe pour fermer la fenรชtre du navigateur.

driver.close();

Mettre fin ร  l'intรฉgralitรฉ du programme

Si vous utilisez cette commande sans fermer toutes les fenรชtres du navigateur au prรฉalable, l'ensemble de votre Java le programme se terminera en laissant la fenรชtre du navigateur ouverte.

System.exit(0);

Exรฉcution du test

Il existe deux maniรจres d'exรฉcuter du code dans Eclipse IDE

  1. On Eclipsedans la barre de menu de, cliquez sur Exรฉcuter > Exรฉcuter.
  2. Presse Ctrl + F11 pour exรฉcuter l'intรฉgralitรฉ du code.

Exรฉcution du test

Si vous avez tout fait correctement, Eclipse afficherait ยซ Test rรฉussi ! ยป

Exรฉcution du test

Localisation des รฉlรฉments de l'interface graphique

La localisation des รฉlรฉments dans WebDriver se fait en utilisant le ยซ findElement(Par.localisateur())" mรฉthode. La partie ยซ localisateur ยป du code est la mรชme que n'importe lequel des localisateurs รฉvoquรฉs prรฉcรฉdemment dans le Selenium IDE chapitres de ces tutoriels. En fait, il est recommandรฉ de localiser les รฉlรฉments de l'interface graphique ร  l'aide de l'IDE et, une fois identifiรฉs avec succรจs, d'exporter le code vers WebDriver.

Voici une Selenium exemple de code qui localise un รฉlรฉment par son identifiant. Facebook est utilisรฉ comme URL de base.

package newproject;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class PG2 {
    public static void main(String[] args) {
    	System.setProperty("webdriver.gecko.driver","C:\\geckodriver.exe");
    	WebDriver driver = new FirefoxDriver();
        String baseUrl = "http://www.facebook.com";
        String tagName = "";
        
        driver.get(baseUrl);
        tagName = driver.findElement(By.id("email")).getTagName();
        System.out.println(tagName);
        driver.close();
        System.exit(0);
}
}

Nous avons utilisรฉ le getTagName() mรฉthode pour extracle nom de la balise de cet รฉlรฉment particulier dont l'identifiant est ยซ email ยป. Lors de son exรฉcution, ce code devrait pouvoir identifier correctement le nom de la balise ยซ input ยป et l'afficher. EclipseLa fenรชtre de la console.

Localisation des รฉlรฉments de l'interface graphique

Rรฉsumรฉ pour localiser les รฉlรฉments

Variation Description ร‰chantillon
Par.className trouve des รฉlรฉments en fonction de la valeur de l'attribut ยซ class ยป findElement(By.className("someClassName"))
Par.cssSelector trouve des รฉlรฉments basรฉs sur le moteur de sรฉlection CSS sous-jacent du pilote findElement(Par.cssSelector(โ€œinput#emailโ€))
Par.id localise les รฉlรฉments par la valeur de leur attribut ยซ id ยป findElement(Par.id("someId"))
 
Par.linkText trouve un รฉlรฉment de lien par le texte exact qu'il affiche findElement(By.linkText(ยซ INSCRIPTION ยป))
 
De nom localise les รฉlรฉments par la valeur de l'attribut "name" findElement(Par.nom("unNom"))
 
Par.partialLinkText localise les รฉlรฉments qui contiennent le texte du lien donnรฉ findElement(By.partialLinkText("REG"))
 
Par.tagName localise les รฉlรฉments par leur nom de balise findElement(By.tagName("div"))
 
Par.xpath localise les รฉlรฉments via XPath findElement(By.xpath(โ€œ//html/body/div/table/tbody/tr/td[2]/table/
tbody/tr[4]/td/table/tbody/tr/td[2]/table/tbody/tr[2]/td[3]/ form/table/tbody/tr[5]โ€))

Remarque sur l'utilisation de findElement(By.cssSelector())

By.cssSelector() ne prend pas en charge la fonctionnalitรฉ ยซ contient ยป. Prendre en compte Selenium Code IDE ci-dessous โ€“

Remarque sur l'utilisation de findElement(By.cssSelector())

In Selenium IDE ci-dessus, l'intรฉgralitรฉ du test a rรฉussi. Cependant dans le Selenium Script WebDriver ci-dessous, le mรชme test a gรฉnรฉrรฉ une erreur car WebDriver ne prend pas en charge le mot-clรฉ ยซ contient ยป lorsqu'il est utilisรฉ dans la mรฉthode By.cssSelector().

Remarque sur l'utilisation de findElement(By.cssSelector())

Commandes communes

Instanciation d'รฉlรฉments Web

Au lieu d'utiliser la longue syntaxe ยซ driver.findElement(By.locator()) ยป ร  chaque fois que vous accรฉderez ร  un รฉlรฉment particulier, nous pouvons instancier un objet WebElement pour celui-ci. La classe WebElement est contenue dans le package ยซ org.openqa.selenium.* ยป.

Instanciation d'รฉlรฉments Web

Cliquer sur un รฉlรฉment

Le clic est peut-รชtre le moyen le plus courant dโ€™interagir avec les รฉlรฉments Web. Le click() La mรฉthode est utilisรฉe pour simuler le clic sur n'importe quel รฉlรฉment. La mรฉthode suivante Selenium Java un exemple montre comment click() a รฉtรฉ utilisรฉ pour cliquer sur Mercury Bouton ยซ Connexion ยป de Tours.

Cliquer sur un รฉlรฉment

Les รฉlรฉments suivants doivent รชtre notรฉs lors de lโ€™utilisation de la mรฉthode click().

  • Il ne prend aucun paramรจtre/argument.
  • La mรฉthode attend automatiquement le chargement dโ€™une nouvelle page, le cas รฉchรฉant.
  • L'รฉlรฉment sur lequel on clique doit รชtre visible (la hauteur et la largeur ne doivent pas รชtre รฉgales ร  zรฉro).

Obtenir des commandes

Les commandes Get rรฉcupรจrent diverses informations importantes sur la page/l'รฉlรฉment. Voici quelques commandes ยซ get ยป importantes que vous devez connaรฎtre.

Commandes Utilisation
get ()

Exemple d'utilisation:

  • Il ouvre automatiquement une nouvelle fenรชtre de navigateur et rรฉcupรจre la page que vous spรฉcifiez entre ses parenthรจses.
  • C'est la contrepartie de Selenium Commande ยซ ouvrir ยป de l'IDE.
  • Le paramรจtre doit รชtre un Chaรฎne objet.
getTitle ()

Exemple d'utilisation:

  • Ne nรฉcessite aucun paramรจtre
  • Rรฉcupรจre le titre de la page actuelle
  • Les espaces blancs de dรฉbut et de fin sont supprimรฉs
  • Renvoie une chaรฎne nulle si la page n'a pas de titre
getPageSource()

Exemple d'utilisation:

  • Ne nรฉcessite aucun paramรจtre
  • Renvoie le code source de la page sous forme de valeur String
getCurrentUrl()

Exemple d'utilisation:

  • Ne nรฉcessite aucun paramรจtre
  • Rรฉcupรจre la chaรฎne reprรฉsentant l'URL actuelle consultรฉe par le navigateur
getText ()

Exemple d'utilisation:

  • Rรฉcupรจre le texte interne de l'รฉlรฉment que vous spรฉcifiez

Commandes de navigation

Ces commandes vous permettent d'actualiser, d'accรฉder et de basculer entre diffรฉrentes pages Web.

aller vers()

Exemple d'utilisation:

  • Il ouvre automatiquement une nouvelle fenรชtre de navigateur et rรฉcupรจre la page que vous spรฉcifiez entre ses parenthรจses.
  • Cela fait exactement la mรชme chose que le get() mรฉthode.
naviguer().refresh()

Exemple d'utilisation:

  • Ne nรฉcessite aucun paramรจtre.
  • Il actualise la page actuelle.
naviguer().retour()

Exemple d'utilisation:

  • Ne nรฉcessite aucun paramรจtre
  • Vous ramรจne d'une page sur l'historique du navigateur.
naviguer().forward()

Exemple d'utilisation:

  • Ne nรฉcessite aucun paramรจtre
  • Vous fait avancer d'une page dans l'historique du navigateur.

Fermer et quitter le navigateur Windows

Fermer()

Exemple d'utilisation:

  • Ne nรฉcessite aucun paramรจtre
  • Il ferme uniquement la fenรชtre du navigateur que WebDriver contrรดle actuellement.
quitter()

Exemple d'utilisation:

  • Ne nรฉcessite aucun paramรจtre
  • Il ferme toutes les fenรชtres ouvertes par WebDriver.

Fermer et quitter le navigateur Windows

Pour illustrer clairement la diffรฉrence entre close() et quit(), essayez d'exรฉcuter le code ci-dessous. Il utilise une page Web qui ouvre automatiquement une fenรชtre lors du chargement de la page et en ouvre une autre aprรจs la sortie.

Fermer et quitter le navigateur Windows

Notez que seule la fenรชtre du navigateur parent a รฉtรฉ fermรฉe et non les deux fenรชtres contextuelles.

Fermer et quitter le navigateur Windows

Mais si vous utilisez quit(), toutes les fenรชtres seront fermรฉes โ€“ pas seulement celle parent. Essayez d'exรฉcuter le code ci-dessous et vous remarquerez que les deux fenรชtres contextuelles ci-dessus seront รฉgalement automatiquement fermรฉes.

package newproject;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class PG3 {
    public static void main(String[] args) {
    	System.setProperty("webdriver.gecko.driver","C:\\geckodriver.exe");
    	WebDriver driver = new FirefoxDriver();
        driver.get("http://www.popuptest.com/popuptest2.html");
        driver.quit();  // using QUIT all windows will close
    }
}

Basculer entre les images

Pour accรฉder aux รฉlรฉments de l'interface graphique dans un cadre, nous devons d'abord demander ร  WebDriver de se concentrer sur le cadre ou la fenรชtre contextuelle avant de pouvoir accรฉder aux รฉlรฉments qu'ils contiennent. Prenons par exemple la page Web https://demo.guru99.com/selenium/deprecated.html

Basculer entre les images

Cette page comporte 3 cadres dont les attributs ยซ nom ยป sont indiquรฉs ci-dessus. Nous souhaitons accรฉder au lien ยซ Obsolรจte ยป entourรฉ ci-dessus en jaune. Pour ce faire, nous devons d'abord demander ร  WebDriver de passer au frame ยซ classFrame ยป en utilisant le "switchTo().frame()" mรฉthode. Nous utiliserons l'attribut name du frame comme paramรจtre pour la partie ยซ frame() ยป.

package newproject;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class PG4 {
	  public static void main(String[] args) {
		  	System.setProperty("webdriver.gecko.driver","C:\\geckodriver.exe");  
		  	WebDriver driver = new FirefoxDriver();
	        driver.get("https://demo.guru99.com/selenium/deprecated.html");
	        driver.switchTo().frame("classFrame");
	        driver.findElement(By.linkText("Deprecated")).click();
	        driver.close(); 
	    }
}

Aprรจs avoir exรฉcutรฉ ce code, vous verrez que le cadre ยซ classFrame ยป est redirigรฉ vers la page ยซ API obsolรจte ยป, ce qui signifie que notre code a pu accรฉder avec succรจs au lien ยซ Obsolรจte ยป.

Basculer entre les fenรชtres contextuelles Windows

WebDriver permet d'afficher des fenรชtres pop-up comme des alertes, contrairement ร  Selenium IDE. Pour accรฉder aux รฉlรฉments de l'alerte (comme le message qu'elle contient), il faut utiliser le "switchTo().alert()" mรฉthode. Dans le code ci-dessous, nous allons utiliser cette mรฉthode pour accรฉder ร  la boรฎte d'alerte puis rรฉcupรฉrer son message ร  l'aide du "getText()" mรฉthode, puis fermez automatiquement la boรฎte d'alerte ร  l'aide de la "switchTo().alert().accept()" mรฉthode.

Tout dโ€™abord, rendez-vous sur https://output.jsbin.com/usidix/1 et cliquez manuellement sur ยซ Go ! ยป bouton ici et voyez par vous-mรชme le texte du message.

Basculer entre les fenรชtres contextuelles Windows

Voyons le Selenium exemple de code pour faire cela-

package mypackage;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class myclass {

    public static void main(String[] args) {
    	System.setProperty("webdriver.gecko.driver","C:\\geckodriver.exe");
        WebDriver driver = new FirefoxDriver();
        String alertMessage = "";

        driver.get("http://jsbin.com/usidix/1");
        driver.findElement(By.cssSelector("input[value=\"Go!\"]")).click();
        alertMessage = driver.switchTo().alert().getText();
        driver.switchTo().alert().accept();
       
        System.out.println(alertMessage);
        driver.quit();
       
    }
}

Sur le Eclipse console, notez que le message d'alerte imprimรฉ est :

Basculer entre les fenรชtres contextuelles Windows

Attend

Il existe deux types d'attente.

  1. Attente implicite โ€“ utilisรฉe pour dรฉfinir le temps d'attente par dรฉfaut tout au long du programme
  2. Attente explicite โ€“ utilisรฉ pour dรฉfinir le temps d'attente pour une instance particuliรจre uniquement

Attente implicite

  • C'est plus simple ร  coder que les attentes explicites.
  • Il est gรฉnรฉralement dรฉclarรฉ dans la partie instanciation du code.
  • Vous nโ€™aurez besoin que dโ€™un seul package supplรฉmentaire ร  importer.

Pour commencer ร  utiliser une attente implicite, vous devrez importer ce package dans votre code.

Attente implicite

Ensuite, dans la partie instanciation de votre code, ajoutez ceci.

Attente implicite

Attente explicite

Les attentes explicites sont effectuรฉes ร  l'aide des classes WebDriverWait et ExpectedCondition. Pour ce qui suit Selenium Par exemple WebDriver, nous attendrons jusqu'ร  10 secondes qu'un รฉlรฉment dont l'identifiant est ยซ username ยป devienne visible avant de passer ร  la commande suivante. Voici les รฉtapes.

ร‰tape 1 :

Importez ces deux packages :

Attente explicite

ร‰tape 2 :

Dรฉclarez une variable WebDriverWait. Dans cet exemple, nous utiliserons ยซ myWaitVar ยป comme nom de variable.

Attente explicite

ร‰tape 3 :

Utilisez myWaitVar avec ExpectedConditions sur les parties oรน vous avez besoin qu'une attente explicite se produise. Dans ce cas, nous utiliserons une attente explicite sur le ยซ nom dโ€™utilisateur ยป (Mercury Tours HomePage) avant de saisir le texte ยซ tutoriel ยป dessus.

Attente explicite

Conditions

Les mรฉthodes suivantes sont utilisรฉes dans les instructions conditionnelles et les instructions de lecture.ping opรฉrations โ€”

  • est autorisรฉ() est utilisรฉ lorsque vous souhaitez vรฉrifier si un certain รฉlรฉment est activรฉ ou non avant d'exรฉcuter une commande.

Les conditions sontEnabled()

  • est affichรฉ() est utilisรฉ lorsque vous souhaitez vรฉrifier si un certain รฉlรฉment est affichรฉ ou non avant d'exรฉcuter une commande.

Les conditions sont affichรฉes ()

  • est sรฉlectionnรฉ() est utilisรฉ lorsque vous souhaitez vรฉrifier si un certain case ร  cocher, bouton radio ou option dans une liste dรฉroulante est sรฉlectionnรฉ. Cela ne fonctionne pas sur les autres รฉlรฉments.

Les conditions sont sรฉlectionnรฉes ()

Utilisation des conditions attendues

La classe ExpectedConditions offre un ensemble plus large de conditions que vous pouvez utiliser conjointement avec la mรฉthode Until() de WebDriverWait.

Vous trouverez ci-dessous quelques-unes des mรฉthodes ExpectedConditions les plus courantes.

  • alertIsPresent() โ€“ attend qu'une boรฎte d'alerte s'affiche.

Utilisation des conditions attendues alertIsPresent()

  • elementToBeClickable() โ€“ Attend qu'un รฉlรฉment soit visible et en mรชme temps activรฉ. L'รฉchantillon Selenium Code Le code ci-dessous attendra que l'รฉlรฉment avec l'id="username" devienne visible et activรฉ avant de lui attribuer une variable WebElement nommรฉe "txtUserName".

Utilisation des conditions attendues

  • frameToBeAvailableAndSwitchToIt() โ€“ Attend que la trame donnรฉe soit dรฉjร  disponible, puis y bascule automatiquement.

Utilisation de l'รฉlรฉment ExpectedConditionsToBeClickable()

Attraper les exceptions

Lors de l'utilisation de isEnabled(), isDisplayed() et isSelected(), WebDriver suppose que l'รฉlรฉment existe dรฉjร  sur la page. Sinon, il lancera un NoSuchElementException. Pour รฉviter cela, nous devons utiliser un bloc try-catch afin que le programme ne soit pas interrompu.

WebElement txtbox_username = driver.findElement(By.id("username"));
try{
        if(txtbox_username.isEnabled()){
            txtbox_username.sendKeys("tutorial");
        }
    }

catch(NoSuchElementException nsee){
            System.out.println(nsee.toString());
 }

Si vous utilisez des attentes explicites, le type d'exception que vous devez intercepter est ยซ TimeoutException ยป.

Attraper les exceptions

Rรฉsumรฉ

  • Pour commencer ร  utiliser l'API WebDriver, vous devez importer au moins ces deux packages.
  • org.openqa.selenium.*
  • org.openqa.selenium.firefox.FirefoxChauffeur
  • Le get() mรฉthode est l'รฉquivalent de Selenium Commande ยซ ouvrir ยป de l'IDE.
  • La localisation des รฉlรฉments dans WebDriver se fait ร  l'aide de l'outil findElement() mรฉthode.
  • Voici les options disponibles pour localiser des รฉlรฉments dans WebDriver :
  • Par.className
  • Par.cssSelector
  • Par.id
  • Par.linkText
  • De nom
  • Par.partialLinkText
  • Par.tagName
  • Par.xpath
  • Le By.cssSelector() ne collecte soutenir la "contient" .
  • Vous pouvez instancier un รฉlรฉment ร  l'aide de la classe WebElement.
  • Cliquer sur un รฉlรฉment se fait en utilisant le click() mรฉthode.
  • WebDriver fournit ces commandes get utiles :
  • get ()
  • getTitle ()
  • getPageSource()
  • getCurrentUrl()
  • getText ()
  • WebDriver fournit ces commandes de navigation utiles
  • naviguer().forward()
  • naviguer().retour()
  • aller vers()
  • naviguer().refresh()
  • Les mรฉthodes close() et quit() sont utilisรฉes pour fermer les fenรชtres du navigateur. Close() est utilisรฉ pour fermer une seule fenรชtre ; alors que quit() est utilisรฉ pour fermer toutes les fenรชtres associรฉes ร  la fenรชtre parent que l'objet WebDriver contrรดlait.
  • Le switchTo().frame() et switchTo().alert() Les mรฉthodes sont utilisรฉes pour diriger le focus de WebDriver sur une trame ou une alerte, respectivement.
  • Implicit waits sont utilisรฉs pour rรฉgler le temps d'attente tout au long du programme, tandis que explicit waits ne sont utilisรฉs que sur des portions spรฉcifiques.
  • Vous pouvez utiliser isEnabled(), isDisplayed(),isSelected() et une combinaison de WebDriverAttendez et Conditions attendues mรฉthodes lors de la vรฉrification de lโ€™รฉtat dโ€™un รฉlรฉment. Cependant, ils ne vรฉrifient pas si l'รฉlรฉment n'existe pas.
  • Lorsque isEnabled(), isDisplayed() ou isSelected() a รฉtรฉ appelรฉ alors que l'รฉlรฉment n'existait pas, WebDriver lancera un NoSuchElementException.
  • Lorsque les mรฉthodes WebDriverWait et ExpectedConditions รฉtaient appelรฉes alors que l'รฉlรฉment n'existait pas, WebDriver lanรงait un TimeoutException.

ร€ noter:

driver.get():Cette mรฉthode est utilisรฉe pour naviguer vers un site Web particulier. Cependant, elle ne conserve pas l'historique du navigateur ni les cookies. Par consรฉquent, les boutons Suivant et Prรฉcรฉdent ne fonctionneront pas et cliquer dessus ne programmera pas la navigation sur la page.

driver.navigate():Cette mรฉthode est รฉgalement utilisรฉe pour naviguer vers un site Web particulier, mais elle conserve l'historique du navigateur et les cookies. Cela permet d'utiliser les boutons avant et arriรจre pour la navigation entre les pages lors du codage d'un cas de test.

Rรฉsumez cet article avec :