我在自动化测试selenium中得到了java.lang.NullPointerException

时间:2018-05-16 03:09:02

标签: java selenium-webdriver automated-tests testng

我在以下行代码中的基本文件和HomePage文件中的以下行获取java.lang.NullPointerException错误

驱动程序 .manage()。timeouts()。implicitlyWait(10,TimeUnit.SECONDS); 和 的驱动器获得( “https://www.google.com”);

基础课程 公共类基地{

    public WebDriver driver ;

    public WebDriver InitializeDriver() throws IOException
    {
        Properties Prop =new Properties();

        FileInputStream fis=new FileInputStream("C:\\Users\\Raj\\eclipse-workspace\\MavenSelenium\\src\\main\\java\\FirstMaven\\MavenSelenium\\Data.properties");

        Prop.load(fis);
        String browsername = Prop.getProperty("browser");

        if (browsername=="Chrome")
        {
            System.setProperty("webdriver.chrome.driver", "C:\\Users\\Raj\\eclipse-workspace\\Work\\chromedriver.exe");
            driver=new ChromeDriver();
        }
        else if (browsername=="Firefox")
        {
           System.setProperty("webdriver.chrome.driver", "C:\\Users\\Raj\\eclipse-workspace\\Work\\geckodriver.exe");
           driver=new FirefoxDriver();  
        }
        else if(browsername=="IE")
        {
            System.setProperty("webdriver.chrome.driver", "C:\\Users\\Raj\\eclipse-workspace\\Work\\IEDriverServer.exe");
            driver=new InternetExplorerDriver();
        }
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        return driver;
    }

}

和HomePAge类

public class HomePage扩展Base {

@Test
public void Navigation() throws IOException
{

driver=InitializeDriver();
driver.get("https://www.google.com");

}   

}

1 个答案:

答案 0 :(得分:-1)

堆栈跟踪在这里总是有用,但我能够弄清楚出了什么问题。

根据您获得NPE的代码,因为永远不会设置driver。这是因为browsername=="Chrome"应为browsername.equals("Chrome")"Chrome".equals(browsername)

==比较对象的引用,其中.equals比较相等。