2017-09-05 4 views
-4

code est comme suit:« Incompatibilité de type: ne peut pas convertir vide en booléen » sur assert

import static org.testng.Assert.assertEquals; 

import static org.testng.Assert.assertTrue; 

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.WebElement; 

public class ContactPageElements { 
    public static WebElement element = null; 
    public static String baseURL1 = "http://something.com"; 

    //Clicking logo should take you back to the baseURL 
    public static void clickLogo (WebDriver driver) { 
     element = driver.findElement(By.xpath(".//*[@id='blah'")); 
     element.click(); 
     String currentURL = driver.getCurrentUrl(); 
     assert.assertEquals(currentURL, baseURL1); 
    } 
} 

Pour assert, je reçois une erreur: « Incompatibilité de type: ne peut pas convertir de vide en booléen »

+0

Je pense que vous n ' t fermer correctement le 'ContactPageElements'. Il y a deux '}' à la fin de votre code. Edit: Je suis fatigué et j'ai pensé que le second était un cours, pas une méthode. –

+0

Peut-être juste le formatage. L'un est pour la classe, et l'autre pour la méthode :) – Dom

+0

Oui, j'ai mal lu ça complètement. Ma faute. –

Répondre

1

Étant donné que vous avez une importation statique pour assertEquals() la dernière ligne de clickLogo() devrait simplement:

assertEquals(currentURL, baseURL1); 
+0

Il devrait, car 'assert' est un mot-clé pas seulement une classe aléatoire ou un nom de variable. Ainsi, utiliser '.' sur' assert' est inutile/faux/non-sens. – Tom

+0

Littéralement cela. Assez facile. Merci! – Dom

+0

@ domoniq-doby Heureux de vous aider. N'hésitez pas à marquer cette réponse comme correcte :) – dave