selenium3.x系列篇之四-chromedriver

第一步:把chrome浏览器安装在系统默认路径下,下载chromedriver,下载地址https://sites.google.com/a/chromium.org/chromedriver/downloads

比如在本地的存储路径为:E:\apps\selenium\chromedriver\chromedriver.exe

 

第二步:测试代码

2.0  Java maven项目,需要在pom文件中添加如下dependency,

 

	<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
	<dependency>
	    <groupId>org.seleniumhq.selenium</groupId>
	    <artifactId>selenium-java</artifactId>
	    <version>3.5.3</version>
	</dependency><!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
	<dependency>
	    <groupId>org.seleniumhq.selenium</groupId>
	    <artifactId>selenium-java</artifactId>
	    <version>3.5.3</version>
	</dependency>

 

 

selenium支持两种启动模式:本地模式,远程模式。

2.1.1 本地模式--》示例代码:

 

	System.setProperty("webdriver.chrome.driver", "E:\\apps\\selenium\\chomedriver\\chromedriver.exe"); 
    	WebDriver wd = new ChromeDriver();
    	wd.manage().window().maximize(); 
    	//打开高德地图
    	wd.get("ditu.amap.com");  
    	    
    	wd.quit();  

通过webdriver.chrome.driver 参数指定chromedriver.exe的存储路径

 

        否则会报错: org.openqa.selenium.WebDriverException: java.net.SocketException: Connection reset

 

        2.1.2 远程模式--》:

0) 下载seleniumserver.jar,下载地址:http://docs.seleniumhq.org/download/

1) 启动hub,默认端口4444

             java -jar E:\apps\selenium\seleniumserver\selenium-server-standalone-3.5.3.jar-role hub

        2)  启动node,默认端口 5555

             java -jar E:\apps\selenium\seleniumserver\selenium-server-standalone-3.5.3.jar-role node -hub http://10.12.1.140:4444/grid/register

 

        DesiredCapabilities dc = DesiredCapabilities.chrome(); 
    	WebDriver wd = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),dc);  
    	wd.manage().window().maximize(); 
    	//打开高德地图
    	wd.get("http://www.baidu.com");  
    	    
        wd.quit();   DesiredCapabilities dc = DesiredCapabilities.chrome(); 
    	WebDriver wd = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),dc);  
    	wd.manage().window().maximize(); 
    	//打开高德地图
    	wd.get("http://www.baidu.com");  
    	    
        wd.quit();  

通过上述模式运行远程模式时,必须把E:\\apps\\selenium\\chomedriver加入到系统环境变量PATH

 

        替代方案是,启动node时:

java -Dwebdriver.chrome.driver=E:\\apps\\selenium\\chomedriver  -jar E:\apps\selenium\seleniumserver\selenium-server-standalone-3.5.3.jar -role node   

        否则会报错: org.openqa.selenium.WebDriverException: Error forwarding the new session Error forwarding the request Connect to ...

        

值得注意的是:在selenium2.x中,远程模式的node启动方式,系统参数-Dwebdriver.chrome.driver=E:\\apps\\selenium\\chomedriver可以在 -jar之后 
java -jar E:\apps\selenium\seleniumserver\selenium-server-standalone-3.5.3.jar -role node -Dwebdriver.chrome.driver=E:\\apps\\selenium\\chomedriver  
从selenium3.x开始, -Dxx必须在 -jar之前,

可以参考:https://github.com/SeleniumHQ/selenium/issues/2566#issuecomment-252657965

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值