2017-04-20 40 views
-1

我得到异常如何使用硒

Exception in thread "main" java.lang.NullPointerException 
    at com.wd.programs.Gmail_Login.email(Gmail_Login.java:17) 
    at com.wd.programs.Gmail_Login.main(Gmail_Login.java:29) 

同时运行下面的代码解决这个问题显示java.lang.NullPointerException。

public class Gmail_Login extends HandlingDropdowns { 
    WebDriver driver ; 

    public Gmail_Login (WebDriver d) { 
     super(d); 
    } 

    public void email(String e) { 

     driver.findElement(By.cssSelector("input[type='email']")).sendKeys(e); 
    } 


    public static void main(String[] args) { 
     WebDriver driver = new FirefoxDriver(); 
     Gmail_Login gl = new Gmail_Login(driver); 
     gl.openApplication("http://www.gmail.com"); 
     gl.email("rize.test1"); 

    } 

} 
+0

'驱动程序'从未初始化。所以** driver.findElement ... **会给出空指针异常。在构造函数内部,使用** driver = d **。 – Sugan

+0

感谢sugan :-) –

回答

0

你是不是分配WebDriver实例传递给Gmail_Login类的WebDriver实例。因此Gmail_Login类中的driver变量的值为null。当您尝试使用值为null的此变量调用任何方法时,它将抛出一个NullPointerException。做到这一点,它将修复例外:

public Gmail_Login (WebDriver d) { 
    super(d); 
    this.driver = d; 
} 
+0

嗨Jayesh谢谢,它的工作原理 –