在我的pom
脚本中,我有:
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.53.1</version>
</dependency>
MVNrepository上的存储库说明列出了几个编译依赖项,包括 Selenium-Chrome-Driver , Selenium-Firefox-Driver 等。我可以运行Firefox -Driver脚本成功但当我尝试使用对象
运行相同的脚本时 ChromeDriver driver = new ChromeDriver();
我收到以下错误:
java.lang.IllegalStateException:驱动程序可执行文件的路径必须由webdriver.chrome.driver系统属性设置;有关更多信息,请参阅https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver。最新版本可以从http://chromedriver.storage.googleapis.com/index.html
下载
无需下载Firefox-Driver即可运行(这是pom
脚本的重点); Chrome驱动程序有什么不同吗?下图显示它是从Maven脚本编译的。
测试脚本:
import org.junit.Test;
import org.openqa.selenium.chrome.ChromeDriver;
import static org.junit.Assert.assertTrue;
public class MyFirstTest {
@Test
public void googleTest() {
ChromeDriver driver = new ChromeDriver();
driver.get("https://www.google.com/");
assertTrue(driver.getTitle().equals("Google"));
driver.quit();
}
}
答案 0 :(得分:1)
是的,它与Firefox不同,差异在a page referenced by exception上解释:
ChromeDriver由三个独立的部分组成。有浏览器本身(&#34; chrome&#34;),Selenium项目提供的语言绑定(&#34;驱动程序&#34;)和从Chromium项目下载的可执行文件,作为&#34; chrome&#34;之间的桥梁和#34;驱动程序&#34; 。这个可执行文件名为&#34; chromedriver&#34;,但我们会尝试将其称为&#34;服务器&#34;在这个页面,以减少混淆。
因此,为了实例化ChromeDriver,您需要