从Selenium中的Config Properties File读取值时获取空指针异常

时间:2017-12-05 04:10:15

标签: java maven selenium nullpointerexception config

package com.HybridFramework.testbase;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class TestBase {

public WebDriver driver;

 public Properties a1;
 public File f1;
 public FileInputStream file;
public void loadPropertiesFile() throws IOException{
        Properties a1 = new Properties();
        System.out.println(System.getProperty("user.dir"));
        //f1= new File("E:\\Selenium-2017\\HybridFramework\\src\\main\\java\\com\\HybridFramework\\config\\config.properties");
    f1 = new File(System.getProperty("user.dir")+"/src/main/java/com/HybridFramework/config/config.properties");
    System.out.println("lola");
    file= new FileInputStream(f1);
    a1.load(file);

    f1 = new File(System.getProperty("user.dir")+"/src/main/java/com/HybridFramework/config/or.properties");
    file= new FileInputStream(f1);
    a1.load(file);

    }
    public void getPropertiesData(){

    }
public static void main(String[] args) throws IOException   {
    TestBase test = new  TestBase();
    //test.getBrowser("firefox");
    System.out.println("Start");
    test.loadPropertiesFile();
System.out.println(test.a1.getProperty("Username"));
    test.a1.getProperty("testname");
}



 }

以下是我引用的属性文件。

config.properties文件

Username=Bhanu
Password=password
url=https://www.google.com

or.properties文件

test=test1
testname=login

错误在

之下

线程“main”java.lang.NullPointerException中的异常     在com.HybridFramework.testbase.TestBase.main(TestBase.java:61)

2 个答案:

答案 0 :(得分:1)

您已声明了Properties类型的实例属性,但从未初始化。 在a1 = new Properties();方法中使用Porperties a1 = new Properties();代替loadPropertiesFile()

答案 1 :(得分:0)

首先使用环境从属性文件中获取属性。 然后,您可以将其设置为System属性,然后您可以使用System.getProperty()