Comment vérifier du texte dans la balise de titre à l'aide de Selenium WebDriver et de java?
Vous pouvez le faire facilement en utilisant le framework JUnit ou TestNG. Faites l'assertion comme ci-dessous:
String actualTitle = driver.getTitle();
String expectedTitle = "Title of Page";
assertEquals(expectedTitle,actualTitle);
OU,
assertTrue(driver.getTitle().contains("Title of Page"));
Si vous utilisez Selenium 2.0/Webdriver, vous pouvez appeler driver.getTitle () ou driver.getPageSource () si vous souhaitez effectuer une recherche dans la source de page actuelle.
En Java, vous pouvez faire quelque chose comme:
if(driver.getTitle().contains("some expected text"))
//Pass
System.out.println("Page title contains \"some expected text\" ");
else
//Fail
System.out.println("Page title doesn't contains \"some expected text\" ");
Vous pouvez le faire facilement par Assertion en utilisant le framework Selenium Testng.
Pas:
1.Créer une session de navigateur Firefox
2.Initialiser le nom du titre attendu.
3. Naviguez sur "www.google.com" [Selon vos besoins, vous pouvez le modifier] et attendez un certain temps (15 secondes) pour charger complètement la page.
4.Obtenez le nom du titre actuel en utilisant "driver.getTitle ()" et stockez-le dans la variable String.
5.Appliquez l'assertion comme ci-dessous, Assert.assertTrue (actualGooglePageTitlte.equalsIgnoreCase (attenduGooglePageTitle), "Le nom du titre de la page ne correspond pas ou Problème de chargement de la grille");
import org.openqa.Selenium.WebDriver;
import org.openqa.Selenium.firefox.FirefoxDriver;
import org.testng.Assert;
import org.testng.annotations.Test;
import com.myapplication.Utilty;
public class PageTitleVerification
{
private static WebDriver driver = new FirefoxDriver();
@Test
public void test01_GooglePageTitleVerify()
{
driver.navigate().to("https://www.google.com/");
String expectedGooglePageTitle = "Google";
Utility.waitForElementInDOM(driver, "Google Search", 15);
//Get page title
String actualGooglePageTitlte=driver.getTitle();
System.out.println("Google page title" + actualGooglePageTitlte);
//Verify expected page title and actual page title is same
Assert.assertTrue(actualGooglePageTitlte.equalsIgnoreCase(expectedGooglePageTitle
),"Page title not matched or Problem in loading url page");
}
}
import org.openqa.Selenium.By;
import org.openqa.Selenium.NoSuchElementException;
import org.openqa.Selenium.WebDriver;
import org.openqa.Selenium.support.ui.ExpectedConditions;
import org.openqa.Selenium.support.ui.WebDriverWait;
public class Utility {
/*Wait for an element to be present in DOM before specified time (in seconds ) has
elapsed */
public static void waitForElementInDOM(WebDriver driver,String elementIdentifier,
long timeOutInSeconds)
{
WebDriverWait wait = new WebDriverWait(driver, timeOutInSeconds );
try
{
//this will wait for element to be visible for 15 seconds
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath
(elementIdentifier)));
}
catch(NoSuchElementException e)
{
e.printStackTrace();
}
}
}