【发布时间】:2018-03-13 12:35:55
【问题描述】:
public class TestBase {
public static WebDriver driver = null;
public static Properties prop = null;
public TestBase() {
try {
prop = new Properties();
FileInputStream ip = new FileInputStream("C:\\seleniumFolder\\SampleMavenProject\\src\\main\\java\\com\\crm\\qa\\config\\config.properties");
prop.load(ip);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void initialization() {
String browsername = prop.getProperty("browser");
if (browsername.equals("chrome")) {
System.setProperty("webdriver.chrome.driver", "C:\\seleniumFolder\\chromedriver.exe ");
driver = new ChromeDriver();
}
driver.manage().window().maximize();
driver.manage().deleteAllCookies();
driver.manage().timeouts().pageLoadTimeout(TestUtil.PAGE_LOAD_TIMEOUT, TimeUnit.SECONDS);
driver.manage().timeouts().implicitlyWait(TestUtil.IMPLICIT_WAIT, TimeUnit.SECONDS);
driver.get(prop.getProperty("url"));
}
}
【问题讨论】:
-
您在哪一行看到异常?
-
你的初始化方法应该考虑else-case。现在,如果浏览器名称不等于“chrome”,它会遇到空指针异常,这很糟糕。此外,考虑到docs.oracle.com/javase/7/docs/api/java/util/…: browsername 可能为 null,因此您的 if-check 应该在文字“chrome”而不是变量 browsername 上调用 equals()。
-
谢谢!我已经删除了 if 检查并且它现在可以正常工作了。