运行Driverscript时出现java.lang.NullPointerException错误

时间:2019-03-19 20:35:43

标签: testng

创建了混合框架的DriverScript部分。尝试使用TestNG作为初步测试运行。但是最终低于错误,并且在setUp方法本身失败。 NullpointerException错误并跳过测试。

下面是代码:

请帮助解决此问题?

公共类DriverScript {

public static WebDriver driver;
Properties prop;
FileInputStream fis;

public DriverScript()
{
    try
    {
        prop = new Properties();
        fis = new FileInputStream("./ConfigurationFile/config.properties");
        prop.load(fis);
    }
    catch(Exception e)
    {
        System.out.println("File Not Found "+e.getMessage());
    }
}

@Test
public void setUp()
{
    String browser = prop.getProperty("Browser");
    if(browser.equalsIgnoreCase("chrome"))
    {
        System.setProperty("webdriver.chrome.driver", "./BrowserExe/chromedriver.exe");
        driver=new ChromeDriver();
    }
    else if(browser.equalsIgnoreCase("firefox"))
    {
        System.setProperty("webdriver.gecko.driver", "./BrowserExe/geckodriver.exe");
        driver=new FirefoxDriver();
    }
    /*else if(browser.equalsIgnoreCase("ie"))
    {
        System.setProperty("webdriver.ie.driver", "./BrowserExe/IEDriverServer.exe");
        driver=new InternetExplorerDriver();
    }*/
    else
    {
        System.out.println("Browser Exe Not Found or Corrupted");
    }

}

1 个答案:

答案 0 :(得分:0)

唯一可能导致NullPointerException的事情(如果它确实来自这两个函数)将是在DriverScript()之前运行setup()。然后prop不会被初始化,并且在尝试执行时会导致错误:

prop.getProperty("Browser");

另外,请确保您导入了:

import java.lang.*;

如果错误来自DriverScript函数,您将收到以下消息:

File Not Found java.lang.NullPointerException

这意味着您在执行操作时输入了错误的路径:

new FileInputStream("./ConfigurationFile/config.properties");

然后fis将为null并在尝试执行此操作时导致错误:

prop.load(fis);

尝试使用调试器准确查看错误的出处。您将更好地了解问题所在