Tout peut me envoyer le code exemple comment vérifier l'élémentComment vérifier élément présent ou visible en sélénium 2 (Selenium WebDriver)
- IsPresent
- IsVisible
- isenable
- textpresent
dans Selenium WebDrvie r en utilisant Java
Tout peut me envoyer le code exemple comment vérifier l'élémentComment vérifier élément présent ou visible en sélénium 2 (Selenium WebDriver)
dans Selenium WebDrvie r en utilisant Java
Vous pouvez essayer quelque chose comme:
WebElement rxBtn = driver.findElement(By.className("icon-rx"));
WebElement otcBtn = driver.findElement(By.className("icon-otc"));
WebElement herbBtn = driver.findElement(By.className("icon-herb"));
Assert.assertEquals(true, rxBtn.isDisplayed());
Assert.assertEquals(true, otcBtn.isDisplayed());
Assert.assertEquals(true, herbBtn.isDisplayed());
Ceci est juste un exemple. Fondamentalement, vous déclarez et définissez les variables WebElement que vous souhaitez utiliser, puis Assert
, qu'elles soient ou non affichées. Ceci utilise TestNG Assertions.
merci beaucoup .. Je vais l'essayer dans mon projet –
j'essaie ci-dessus exemple mais il n'est pas l'exécution des prochaines étapes si l'assertion précédente est un échec. Je veux utiliser verify au lieu de l'assertion pour pouvoir exécuter les prochaines étapes de test. Et je fais aussi échouer tout le cas de test si une assertion et une vérification sont échouées –
Donc, ce que j'ai compris de votre réponse, c'est que vous voudriez que le test continue même si l'assertion échoue. Est-ce exact? – DarthOpto
Référez lien suivant pour vérifier la présence d'un élément sur la page: Méthode http://seleniumwebdriverfaq.blogspot.in/2012/03/how-can-i-check-presence-of-webelement_5206.html
Pour vérifier visible, vous pouvez utiliser .isDisplayed().
Pour vous assurer qu'un élément est présent, vous pouvez effectuer les opérations suivantes:
driver.findElements(By.id("id"));
qui retourne un tableau, si cette taille du tableau est> 0 alors l'élément/s est présente.
, vous devez également fournir plus d'informations, telles que la langue et ce que vous avez essayé avant de demander,
Bonne chance
driver.findelement (By.id ("id1")). isDisplayed() ' driver.findelement (By.id ("id2")). sendkey ("tester"); Ici, si l'élément n'est pas affiché, il échoue au test élémentaire et ne passe pas à l'étape suivante pour l'exécution. Alors s'il vous plaît aidez-moi à gérer l'assertion et à continuer l'exécution des tests pour les prochaines étapes du sélénium webdrier et testng. Même si je veux aussi marquer un cas de test échouer si quelqu'un a échoué. –
id est unique, vous devriez utiliser .findElement() pour cela. .findElements() est par exemple. By.ClassName() – Brunis
je imprimer des relevés java pour faciliter la compréhension.
Pour vérifier le présent élément:
if(driver.findElements(By.xpath("value")).size() != 0){
System.out.println("Element is Present");
}else{
System.out.println("Element is Absent");
}
Ou
if(driver.findElement(By.xpath("value"))!= null){
System.out.println("Element is Present");
}else{
System.out.println("Element is Absent");
}
Pour vérifier Visible:
if(driver.findElement(By.cssSelector("a > font")).isDisplayed()){
System.out.println("Element is Visible");
}else{
System.out.println("Element is InVisible");
}
Pour vérifier Activer:
if(driver.findElement(By.cssSelector("a > font")).isEnabled()){
System.out.println("Element is Enable");
}else{
System.out.println("Element is Disabled");
}
Pour vérifier le texte actuel
if(driver.getPageSource().contains("Text to check")){
System.out.println("Text is present");
}else{
System.out.println("Text is absent");
}
Ces exemples seraient meilleurs en utilisant la classe ExpectedConditions. – djangofan
if (driver.findElement (By.cssSelector ("a> police")). IsDisplayed()) { ne fonctionnerait pas car isdisplayed ne renvoie pas false. renvoie true uniquement si affiché sinon throws élément non trouvé exception ... – Manglesh
Voici mon code Java pour Sélénium WebDriver.Écrivez la méthode suivante et l'appeler pendant l'affirmation:
protected boolean isElementPresent(By by){
try{
driver.findElement(by);
return true;
}
catch(NoSuchElementException e){
return false;
}
}
Essayez d'utiliser ci-dessous le code:
private enum ElementStatus{
VISIBLE,
NOTVISIBLE,
ENABLED,
NOTENABLED,
PRESENT,
NOTPRESENT
}
private ElementStatus isElementVisible(WebDriver driver, By by,ElementStatus getStatus){
try{
if(getStatus.equals(ElementStatus.ENABLED)){
if(driver.findElement(by).isEnabled())
return ElementStatus.ENABLED;
return ElementStatus.NOTENABLED;
}
if(getStatus.equals(ElementStatus.VISIBLE)){
if(driver.findElement(by).isDisplayed())
return ElementStatus.VISIBLE;
return ElementStatus.NOTVISIBLE;
}
return ElementStatus.PRESENT;
}catch(org.openqa.selenium.NoSuchElementException nse){
return ElementStatus.NOTPRESENT;
}
}
Pour vérifier si l'élément est visible nous devons utiliser element.isDisplayed();
Mais si nous devons vérifier présence de l'élément partout dans Dom nous pouvons utiliser la méthode suivante
public boolean isElementPresentCheckUsingJavaScriptExecutor(WebElement element) {
JavascriptExecutor jse=(JavascriptExecutor) driver;
try {
Object obj = jse.execute("return typeof(arguments[0]) != 'undefined' && arguments[0] != null;",
element);
if (obj.toString().contains("true")) {
System.out.println("isElementPresentCheckUsingJavaScriptExecutor: SUCCESS");
return true;
} else {
System.out.println("isElementPresentCheckUsingJavaScriptExecutor: FAIL");
}
} catch (NoSuchElementException e) {
System.out.println("isElementPresentCheckUsingJavaScriptExecutor: FAIL");
}
return false;
}
La méthode execute (String, WebElement) est indéfinie pour le type JavascriptExecutor –
Qu'est-ce que vous avez essayé? Avez-vous lu des tutoriels? Dans quelle langue? C#? Java? PHP? Cochon latin? – Arran
Je veux l'essayer en langage java. S'il vous plaît envoyez-moi des tutoriels ou des documents d'aide pour le pilote Web Selenium. Je serai reconnaissant envers vous. s'il vous plaît aidez-moi –