我正在尝试使用以下代码启动firefox浏览器;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.Test;
public class test00104 {
@Test
public void testerror15() throws InterruptedException{
System.setProperty("webdriver.gecko.driver","D:\\WorkSpace_Shweta\\UIAutomation\\lib\\geckodriver.exe");
//System.setProperty("webdriver.firefox.bin","C:\\Program Files\\Mozilla Firefox\\firefox.exe");
WebDriver driver = new FirefoxDriver();
driver.get("https://www.google.com");
Thread.sleep(2000);
driver.findElement(By.xpath("http://www.google.com")).sendKeys("Selenium hq");
}
}
不知怎的,它不起作用,我得到的错误是:
org.openqa.selenium.SessionNotCreatedException Failed to start browser \\?\C:\Program Files\Mozilla Firefox\firefox.exe: other os error.
我看了几个帖子但没有找到答案。 使用的环境:Selenium 3.4.0,Gecko 0.16.0和FF 53.0.3
答案 0 :(得分:0)
我遇到了类似的问题,这是由于超出/tmp
的配额造成的,因此geckodriver无法在那里创建Rust配置文件目录(rust_mozprofile*
)。
您可以使用TEMP
环境变量为这些配置文件指定其他位置(请参阅https://github.com/mozilla/geckodriver/issues/299)。此外,请务必使用driver.quit()
正确关闭驱动程序,以防止配置文件填满TEMP
。