2016-11-23 25 views
6

Eclipse kullanarak selenium web sürücüsünü indirmeye çalışıyorum ve son adımda ve başarılı bir şekilde web sürücüsünü ithal ediyorum, ancak, aynı zamanda firefox için aynısını yapmaya çalıştığımda içe aktarma seçeneği. Baska öneri? Aşağıdaki kodda bir sorun var mı?selenium kurulum engel "importfirefoxdriver"

Kodu:

package webdriver_project; 

import org.openqa.selenium.WebDriver; 

public class webdriver_module_1 { 
    public static void main(String[] args) { 
     WebDriver driver = new firefoxDriver(); 
    } 

} 

cevap

2

Eğer, önce kukla Sürücü indirmelidir Firefox sürüm 48 veya üstü kullanıyorsanız:
https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver
Sisteminiz için uygun bir sürümü seçin (windows/linux, 32 veya 64 bit), dosyayı indirin ve yürütülebilir dosyaya tam dizin yolunu eklemek için Yol sistemi değişkenini güncelleyin.
değişmek resmi bir bilgi bakınız: https://github.com/SeleniumHQ/selenium/blob/master/dotnet/CHANGELOG

Geckodriver şimdi Firefox'u otomatik hale varsayılan mekanizmasıdır. Bu, Mozilla'nın bu tarayıcı için bir sürücü uygulaması, ve Firefox 48 ve sonraki sürümlerinin otomatikleştirilmesi için gereklidir.


Sana tutulmayı kullanarak selenyum indiririm nasıl emin değilim. Kütüphaneleri (kavanozlar) kendi sayfalarından indirdiyseniz ve bunları Java Oluşturma Yolu/Kitaplıkları seçeneğini kullanarak Eclipse'de harici kavanoz olarak manuel olarak yerleştirdiniz mi?

  • ilk Eclipse Marketplace seçeneğini kullanarak Maven eklentisini yüklemek:

    Neyse, bence en kolay yolu Maven projeye proje dönüştürmek için olan Eclipse proje üzerinde http://www.eclipse.org/m2e/

  • sonraki sağ tıklayın, ve ardından Yapılandırma/Dönüştürme Maing projesi için'u seçin. Sonraki düzenleme pom.xml dosyası ve Selenyum web sayfasından buna bir bağımlılık ekleyin:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
        <modelVersion>4.0.0</modelVersion> 
        <groupId>WebKierowca</groupId> 
        <artifactId>WebKierowca</artifactId> 
        <version>0.0.1-SNAPSHOT</version> 
        <build> 
         <sourceDirectory>src</sourceDirectory> 
         <plugins> 
          <plugin> 
           <artifactId>maven-compiler-plugin</artifactId> 
           <version>3.5.1</version> 
           <configuration> 
            <source>1.8</source> 
            <target>1.8</target> 
           </configuration> 
          </plugin> 
         </plugins> 
        </build> 
        <dependencies> 
         <dependency> 
          <groupId>org.seleniumhq.selenium</groupId> 
          <artifactId>selenium-java</artifactId> 
          <version>3.0.1</version> 
         </dependency> 
        </dependencies> 
    </project> 
    

    Son olarak aşağıda java sınıf oluşturmak, değiştirmek:

    <dependency> 
        <groupId>org.seleniumhq.selenium</groupId> 
        <artifactId>selenium-java</artifactId> 
        <version>3.0.1</version> 
    </dependency> 
    

benim örnek projede pom.xml tüm içerik http://docs.seleniumhq.org/download/maven.jsp

Marionette sürücüsüne (geckodriver.exe) işaret eden bir yol, bu sınıfa sağ tıklayın ve Java uygulaması olarak çalıştırın. herşey yolunda ise, google web sayfasına gitmek, Firefox başlatmak 5 saniye boyunca bir kelime "selenyum" ve arama sonuçlarını aramalıyız:

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.firefox.FirefoxDriver; 

public class Test { 

    public static void main(String ... x){ 
     // Path to Marionette driver 
     System.setProperty("webdriver.gecko.driver", "C:/serwery/geckodriver.exe"); 

     WebDriver driver = new FirefoxDriver(); 

     driver.get("http://www.google.com"); 

     driver.findElement(By.name("q")).sendKeys("Selenium"); 
     driver.findElement(By.name("btnG")).click(); 

     try { 
      Thread.sleep(5000); 
     } catch (InterruptedException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     driver.quit(); 
    } 
} 
+0

Teşekkür! İşe yaradı! –