selenium2 安装、简单使用及浏览器启动问题解决汇总

一、selenium2 安装

1.安装jdk并配置环境变量

    jdk需要1.6版本及以上的,这个从网上下载就可以,环境变量的配置前边的随笔整理过就不多说了。

2.安装Firefox,Selenium IDE,Firebug和firepath

(1)安装FireFox

    Firefox版本有一定限制,需要和selenium IDE相匹配。

   下载地址: http://www.firefox.com.cn/download/

(2)安装Selenium IDE

    Selenium IDE是基于FIREFOX浏览器的一个插件,提供GUI界面来运行Selenium测试。Selenium IDE提供脚本录制和回放功能,可以将用户在浏览器中执行的操作记录下来,生成各种形式的脚本,可以将这些脚本保存供selenium使用。Selenium IDE主要是用在Selenium 1.0中,在Selenium 2.0中基本不使用。

   1)下载Selenim IDE 下载地址:http://seleniumhq.org/projects/ide/(官网封了!)csdn上下载的

   2)安装:直接把下载的Selenium IDE文件拖到FireFox浏览器窗口中,按提示操作即可安装成功。

(3)安装Firebug

    1)打开Firefox浏览器

    2)点击菜单“工具(T)”,下拉列表中选择“附加组件”。

    3)“获取附加组件”

    4)在搜索里输入“firebug”,稍等即可。

    5)点击“添加至Firefox”

    6)OK,重启浏览器即可。

(4)安装firepath

   1)打开Firefox浏览器

   2)点击菜单“工具(T)”,下拉列表中选择“附加组件”。

   3)“获取附加组件”

   4)在搜索里输入“firepath”,稍等即可。

   5)点击“添加至Firefox” 

   6)重启浏览器即可。

3.安装eclipse

  安装eclipse,安装在默认安装目录下

4。安装selenium webdriver

  首先声明selenium webdriver=selenium2=selenium1+webdriver 这个基础留到下一篇详细说明。

 (1)下载:官方UserGuide:http://seleniumhq.org/docs/(官网进不去,用下边地址)

          CSDN:  http://download.csdn.net/download/shingo0109/8183435

   2)下载:selenium-server-standalone-2.25.0.jar和selenium-java-2.25.0.zip(使用java语言的下载该包)。 

   3)解压下载的selenium-java-2.25.0.zip文件

二、工具的简单使用

1、 Selenium-IDE使用

1)Firefox工具栏,打开Selenium-IDE插件,如下图:

2)在“Base URL”中输入需要录制脚本的网址地址,然后点击界面中右上角红色录制按钮(开始录制、停止录制都是此按钮),如下图。

3)录制完成后,点击回放按钮可以对刚刚录制的脚本进行回放,这里可以调整回放速度。 回放按钮就是上图中的绿色三角按钮。

4)还可以将录制的脚本转换成C#,Java,PHP,Ruby,Prel,Groovy,Python等语言,如下图所示。转换完以后可以直接复制到Eclipse中使用,在Selenium 1.0中稍加修改就可使用,在Selenium 2.0则不能直接使用,只能手动编制。

2、 Firebug的使用

打开Firebug有两种基本的方法:

1)当需要获取页面上元素的属性时,可以使用Firebug进行获取,例如下图所示输入框:

获取方法:右击输入框,在菜单中选择“查看元素” 

此时将会在页面下方出现该元素的属性,如下图所示:

然后右击“编辑”后面的内容,在菜单中选择“复制xpath”,即可使用。

2)Firebug也可以通过点击Firefox浏览器上的“工具”菜单->“Firebug”->“打开Firebug”进行打开。

3、xpath checker的使用

元素的属性还可以通过xpath checker来查看。对于上面百度输入框的属性可以通过右击并选择菜单中的“view xpath“按钮

此时会打开如下窗口,“XPath”中的内容就是该输入框的属性,在下面会显示对应的元素。

4、Selenium 2.0的使用

1)在Eclipse里新建一个project,然后引用selenium-java-2.25.0.zip解压后的selenium-java-2.25.0.jar。

2)新建一个package"test"

3)在"test"包下新建一个class“Seleniumcn”把代码贴进去,如果代码没错误就可以运行了。

    因为selenium2支持多浏览器,这里只总结常用的三种浏览器。

  (1)用firefox浏览器执行测试,(如果firefox浏览器安装路径为默认路径,则代码如下)

package test;
import java.util.Set;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Seleniumcn {

    public static void main(String[] args) {

      //如果不是默认路径安装,需要先将firefox.exe配置到系统变量中去,如下:

     // System.setProperty("webdriver.firefox.bin", "D:\Program Files\Mozilla Firefox\firefox.exe");

     //解决url输不进去问题
   
 System.setProperty("javax.xml.parsers.DocumentBuilderFactory","com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl");
      WebDriver driver = new FirefoxDriver();
      driver.get("http://www.baidu.com");
      WebElement element = driver.findElement(By.name("kw"));
      element.sendKeys("hello Selenium!");
      element.submit();
      try {
         Thread.sleep(3000);
      } catch (InterruptedException e) {
           e.printStackTrace();
      }
      System.out.println("Page title is: " + driver.getTitle());
      driver.close();
    }
}

    (2)用IE浏览器执行测试,由于ie,chrome浏览器的driverServer是由他们自己管理的,我们需要下载相应的驱动,ie的为IEDriverServer.exe,注意区分32位和64位,使用方法如下:

     System.setProperty("webdriver.ie.driver", "src\main\resources\IEDriver.exe");

     WebDriver driver = new InternetExplorerDriver();
     driver.get("http://www.baidu.com");
     同样,如果ie不是默认路径安装需要配置bin路径到系统属性中去
     Tip:加载IEDriverServer的时候,通常会因为兼容模式的设置问题,而无法启动,尝试在创建IEDriver对象的时候 加入合适的参数设置:
      DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer();
     ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
     WebDriver driver = new InternetExplorerDriver(ieCapabilities);
完整代码如下:

package test;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.remote.DesiredCapabilities;

public class Seleniumcn {
    public static void main(String[] args) {
        System.setProperty("webdriver.ie.driver", "C:\Program Files\IEDriverServer.exe");
       //解决ie兼容模式设置导致无法启动问题
        DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer();
        ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
        WebDriver driver = new InternetExplorerDriver(ieCapabilities);
        driver.get("http://www.baidu.com");
        WebElement element = driver.findElement(By.id("kw"));
        element.sendKeys("hello Selenium!");
        element.submit();
        try {
           Thread.sleep(3000);
        } catch (InterruptedException e) {
                 e.printStackTrace();
       }
       System.out.println("Page title is: " + driver.getTitle());
       driver.close();
    }
}

  (3)用chrome浏览器执行测试,这里只说下启动chrome浏览器。(需要下载驱动chromedriver.exe)

       System.setProperty("webdriver.chrome.driver", "C:\Program Files\chromedriver.exe");

       WebDriver driver = new ChromeDriver();
       driver.get("www.baidu.com");
 
 (4)启动浏览器的过程中,经常出现启动浏览器窗口,却没有完成输入url地址的情况,大部分由于版本不兼容造成的。
原文地址:https://www.cnblogs.com/wangcp-2014/p/4305439.html