Selenium WebDriver 环境搭建

初学


Selenium WebDriver ,上网找了一些搭建环境的教程,综合尝试了一下,搭好了,Mark一下以便以后重新搭建参考。

第一步:准备文件

        去官网(http://seleniumhq.org/download/)下载必要的文件:

        1.Selenium Server (formerly the Selenium RC Server)最基本的jar包

        2.Selenium Client & WebDriver Language Bindings(选择你熟悉的语言,如java)

        3.Third Party Drivers, Bindings, and Plugins(若然你想在chrome上跑,需要下个chrome的驱动)

        有这三个基本ok了


第二步:环境准备

        1.eclipse(习惯用这个了就它吧)

        2.Firefox浏览器(默认支持的浏览器,Firefox 10亲测可用,最新版本的不一定支持)

        3.chrome(如果有需要的话)

        以上浏览器都安装在默认路径,如果不是的话测试代码中需要配置


第三步:跑个程序测试一下

        1.新建一个java工程,名字随意

        2.贴上代码(代码转载自http://www.open-open.com/lib/view/open1354764154148.html):

public class ExampleForFireFox  {
     public static void main(String[] args) {
         // 如果你的 FireFox 没有安装在默认目录,那么必须在程序中设置
//      System.setProperty("webdriver.firefox.bin", "D:\\Program Files\\Mozilla Firefox\\firefox.exe");
         // 创建一个 FireFox 的浏览器实例
         WebDriver driver = new FirefoxDriver();
 
         // 让浏览器访问 Baidu
         driver.get( "http://www.baidu.com" );
         // 用下面代码也可以实现
         // driver.navigate().to("http://www.baidu.com");
 
         // 获取 网页的 title
         System.out.println( "1 Page title is: " + driver.getTitle());
 
         // 通过 id 找到 input 的 DOM
         WebElement element = driver.findElement(By.id( "kw" ));
 
         // 输入关键字
         element.sendKeys( "zTree" );
 
         // 提交 input 所在的  form
         element.submit();
         
         // 通过判断 title 内容等待搜索页面加载完毕,间隔10秒
         ( new WebDriverWait(driver, 10 )).until( new ExpectedCondition<Boolean>() {
             public Boolean apply(WebDriver d) {
                 return d.getTitle().toLowerCase().endsWith( "ztree" );
             }
         });
 
         // 显示搜索结果页面的 title
         System.out.println( "2 Page title is: " + driver.getTitle());
         
         //关闭浏览器
         driver.quit();
     }
}
        3.开始运行
        4.大功告成,剩下的就找教程慢慢学吧
        注意:上面代码有注释,对于没有把浏览器安装在默认路径的,需要调用System.setProperty函数设置

最后附上使用chrome测试的代码:
public class ExampleForChrome {
 public static void main(String[] args) throws IOException {
        // 设置 chrome 的路径
        System.setProperty(
                "webdriver.chrome.driver",
                "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe");

        // 创建一个 ChromeDriver 的接口,用于连接 Chrome
        @SuppressWarnings("deprecation")
        ChromeDriverService service = new ChromeDriverService.Builder()
                .usingDriverExecutable(
                        new File(
                                "C:\\software\\Selenium\\chromedriver_win32\\chromedriver.exe"))
                .usingAnyFreePort().build();

        service.start();
        // 创建一个 Chrome 的浏览器实例
        WebDriver driver = new RemoteWebDriver(service.getUrl(),
                DesiredCapabilities.chrome());
 
        // 让浏览器访问 Baidu
        driver.get("http://www.baidu.com");
        // 用下面代码也可以实现
        // driver.navigate().to("http://www.baidu.com");
 
        // 获取 网页的 title
        System.out.println("1 Page title is: " + driver.getTitle());
 
        // 通过 id 找到 input 的 DOM
        WebElement element = driver.findElement(By.id("kw"));
 
        // 输入关键字
        element.sendKeys("zTree");
 
        // 提交 input 所在的 form
        element.submit();
 
        // 通过判断 title 内容等待搜索页面加载完毕,间隔10秒
        (new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
            public Boolean apply(WebDriver d) {
                return d.getTitle().toLowerCase().endsWith("百度搜索");
            }
        });
 
        // 显示搜索结果页面的 title
        System.out.println("2 Page title is: " + driver.getTitle());
 
        // 关闭浏览器
        driver.quit();
        // 关闭 ChromeDriver 接口
        service.stop();
 
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值