Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ';在路径';中找不到geckodriver.exe二进制文件;尝试使用Appium自动化firefox浏览器时_Java_Appium_Geckodriver - Fatal编程技术网

Java ';在路径';中找不到geckodriver.exe二进制文件;尝试使用Appium自动化firefox浏览器时

Java ';在路径';中找不到geckodriver.exe二进制文件;尝试使用Appium自动化firefox浏览器时,java,appium,geckodriver,Java,Appium,Geckodriver,我一直在为这个问题挠头,我可以让chrome应用程序运行,但firefox不会。我已经将geckodriver.exe添加到我的路径变量(包括用户和系统),安装Firefox 64位,并完成了运行appium测试的所有先决条件(包括阅读本文)。通过搜索网页,我意识到这是appium最近的一次更新,所以我觉得自己有点像在未知领域 下面是我在尝试运行(TestNG)时收到的代码和错误消息 公共类测试{ 公共AndroidDriver; 公共网络驱动器,它等待; @预处理法 public void s

我一直在为这个问题挠头,我可以让chrome应用程序运行,但firefox不会。我已经将geckodriver.exe添加到我的路径变量(包括用户和系统),安装Firefox 64位,并完成了运行appium测试的所有先决条件(包括阅读本文)。通过搜索网页,我意识到这是appium最近的一次更新,所以我觉得自己有点像在未知领域

下面是我在尝试运行(TestNG)时收到的代码和错误消息

公共类测试{
公共AndroidDriver;
公共网络驱动器,它等待;
@预处理法
public void setup()引发畸形的DurException{
DesiredCapabilities=新DesiredCapabilities();
System.setProperty(“webdriver.gecko.driver”,“C:\\Users\\Jack\\Downloads\\drivers\\geckodriver.exe”);
caps.setCapability(“deviceName”、“sdk_gphone_x86”);
caps.setCapability(“udid”,“emulator-5554”);//来自“adb设备”命令的DeviceId
caps.setCapability(“平台名”、“安卓”);
caps.setCapability(“平台版”、“11.0”);
caps.setCapability(“automationName”、“Gecko”);
caps.setCapability(“浏览器名”、“firefox”);
caps.setCapability(“skipUnlock”、“true”);
上限设定能力(“noReset”、“false”);
驱动程序=新的AndroidDriver(新的URL(“http://127.0.0.1:4723/wd/hub"(大写),;
等待=新的WebDriverWait(驱动程序,10);
}
@试验
public void basicTest()引发InterruptedException{
时间单位。秒。睡眠(5);
}
@后置法
公共无效拆卸(){
driver.quit();
}
}
错误

org.openqa.selenium.SessionNotCreatedException:无法创建新的远程会话。有关详细信息,请查看服务器日志。原始错误:处理命令时发生未知的服务器端错误。原始错误:在路径中找不到geckodriver.exe二进制文件。请确保它在您的系统中存在

服务器日志


转到环境变量->系统变量->路径变量->单击编辑->给出geckodriver.exe文件夹的路径(务必提及geckodriver.exe所在的文件夹名称)例如:-C://Users//Downloads//GeckodriverFolder

创建另一个系统变量“geckodriver”,并提供geckodriver.exe存储文件夹的相同路径

应用更改并重新启动IDE并执行testcase

public class test {

public AndroidDriver<MobileElement> driver;
public WebDriverWait                wait;

@BeforeMethod
public void setup() throws MalformedURLException {
    DesiredCapabilities caps = new DesiredCapabilities();
    System.setProperty("webdriver.gecko.driver", "C:\\Users\\Jack\\Downloads\\drivers\\geckodriver.exe");
    
    caps.setCapability("deviceName", "sdk_gphone_x86");
    caps.setCapability("udid", "emulator-5554"); //DeviceId from "adb devices" command
    caps.setCapability("platformName", "Android");
    caps.setCapability("platformVersion", "11.0");
    caps.setCapability("automationName", "Gecko");
    caps.setCapability("browserName", "firefox");
    caps.setCapability("skipUnlock", "true");
    caps.setCapability("noReset", "false");

    driver = new AndroidDriver<MobileElement>(new URL("http://127.0.0.1:4723/wd/hub"), caps);
    wait = new WebDriverWait(driver, 10);
}

@Test
public void basicTest() throws InterruptedException {
    TimeUnit.SECONDS.sleep(5);
}

@AfterMethod
public void teardown() {
    driver.quit();
}
}