先说Chrome吧,之前我记得和启动Firefox一样很简单就可以了,这次死活都不行,查看了错误信息,也去selenium的官方网站进行了学习,发现新版本的Selenium2+Webdriver在启动浏览器方向有了一些变化,首先chromedriver已经有谷歌官方提供了, http://chromedriver.storage.googleapis.com/index.html 最新是2.6版本,可是里面只有Mac的32位版,我们还是老实的下载2.4版本,选择win32bit的zip包,解压出来,放到项目里,还要在selenium官网下载一个Chrome的selenium-server-standalone,我的版本是2.37.0,先在cmd中把这个孤傲的server启动起来吧
java -jar selenium-server--standalone2.37.0
public static void initDriver(){ } public static WebDriver initDriver(String bsPath){ //IEDriver位置 bsPath=new File("").getAbsolutePath()+"\\IEDriverServer.exe";//"C:\\Users\\Administrator\\autoTest\\IEDriverServer.exe"; System.setProperty("webdriver.ie.driver", bsPath); DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer(); capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); WebDriver idr = new InternetExplorerDriver(capabilities); return idr; } public static WebDriver initDriver(int port){ //FirefoxDriver WebDriver fdr = new FirefoxDriver(); return fdr; } public static WebDriver initDriver(String bsPath,int port){ //chromedriver bsPath=new File("").getAbsolutePath()+"\\chromedriver.exe"; System.setProperty("webdriver.chrome.driver", bsPath); WebDriver cdr = new ChromeDriver(); return cdr; }
今天快下班了,就先把代码贴上来,简单再说一下,我是写了一个方法,然后对这个方法进行了重载,根据参数不同,会启动不同的浏览器,IE和Chrome类似,如果有遇到问题,大家再交流吧。