2014-01-24 165 views
0

我試圖運行此代碼:火狐不開與FirefoxDriver硒

@Before 
public void setUp() throws Exception { 
    driver = new FirefoxDriver(); 
    baseUrl = "https://www.google.com.br/"; 
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); 
} 

,但是它停止(應用程序不退出,僅停止)在FirefoxDriver(),並不會引發任何錯誤。 我使用Firefox 25.0.1(32位),硒IDE 2.5,JAVA JDK 1.7中,Windows 7(64位)與Maven運行:

<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-firefox-driver</artifactId> 
    <version>2.9.0</version> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-server</artifactId> 
    <version>2.9.0</version> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium</artifactId> 
    <version>2.0rc2</version> 
    <type>pom</type> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-java</artifactId> 
    <version>2.11.0</version> 
</dependency> 
<dependency> 
    <groupId>junit</groupId> 
    <artifactId>junit</artifactId> 
    <version>4.11</version> 
    <scope>test</scope> 
</dependency> 
<dependency> 
    <artifactId>selenium-api</artifactId> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <type>jar</type> 
    <version>2.9.0</version> 
</dependency> 

回答

3

您使用硒的一個非常過時的版本。

在項目對象模型xml文件的頂部添加一個變量,然後將其用作您的硒版本。

<properties> 
    <selenium.version>2.39.0</selenium.version> 
</properties> 
... 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-firefox-driver</artifactId> 
    <version>${selenium.version}</version> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-server</artifactId> 
    <version>${selenium.version}</version> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium</artifactId> 
    <version>2.0rc2</version> 
    <type>pom</type> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-java</artifactId> 
    <version>${selenium.version}</version> 
</dependency> 
<dependency> 
    <groupId>junit</groupId> 
    <artifactId>junit</artifactId> 
    <version>4.11</version> 
    <scope>test</scope> 
</dependency> 
<dependency> 
    <artifactId>selenium-api</artifactId> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <type>jar</type> 
    <version>${selenium.version}</version> 
</dependency> 
+0

沒錯!當我添加Maven依賴關係時,他以一種奇怪的方式命令,爲此我得到了舊的。 – ThiagoKrug

1

我認爲您的硒版本對於Firefox 25來說太老了。它目前在2.39。 通常你也只需要selenium-java和selenium-api,並且保持版本的一致性是個好主意。我的pom.xml看起來是這樣的:

... 
    <properties> 
    ... 
    <selenium.version>2.39.0</selenium.version> 
    ... 
    </properties> 
    ... 
    <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-java</artifactId> 
     <version>${selenium.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-api</artifactId> 
     <version>${selenium.version}</version> 
    </dependency> 
    ... 
-2

請添加以下的依賴:

<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-api</artifactId> 
    <version>2.53.1</version> 
</dependency> 
+0

已發佈。 – user5226582

+0

重複的答案 –