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>


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  

        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


猜你喜欢

转载自blog.csdn.net/wwhrestarting/article/details/77934588