zoukankan      html  css  js  c++  java
  • selenium webdriver学习(二)————对浏览器的简单操作(转载JARVI)

    selenium webdriver对浏览器的简单操作

    打开一个测试浏览器

    对浏览器进行操作首先需要打开一个浏览器,接下来才能对浏览器进行操作。但要注意的是,因为Chrome Driver是Chromium 项目自己支持和维护的,所以你必需另外下载安装Chrome Driver,详细介绍查下他们的wiki 

    Java代码  收藏代码
    1. import java.io.File;  
    2.   
    3. import org.openqa.selenium.WebDriver;  
    4. import org.openqa.selenium.firefox.FirefoxBinary;  
    5. import org.openqa.selenium.firefox.FirefoxDriver;  
    6. import org.openqa.selenium.ie.InternetExplorerDriver;  
    7.   
    8. public class OpenBrowsers {  
    9.   
    10.       
    11.     public static void main(String[] args) {  
    12.         //打开默认路径的firefox  
    13.         WebDriver diver = new FirefoxDriver();  
    14.           
    15.         //打开指定路径的firefox,方法1  
    16.         System.setProperty("webdriver.firefox.bin","D:\Program Files\Mozilla Firefox\firefox.exe");   
    17.         WebDriver dr = new FirefoxDriver();  
    18.           
    19.         //打开指定路径的firefox,方法2  
    20.         File pathToFirefoxBinary = new File("D:\Program Files\Mozilla Firefox\firefox.exe");    
    21.         FirefoxBinary firefoxbin = new FirefoxBinary(pathToFirefoxBinary);    
    22.         WebDriver driver1 = new FirefoxDriver(firefoxbin,null);  
    23.           
    24.         //打开ie  
    25.         WebDriver ie_driver = new InternetExplorerDriver();  
    26.           
    27.         //打开chrome  
    28.         System.setProperty("webdriver.chrome.driver", "D:\chromedriver.exe");  
    29.         System.setProperty("webdriver.chrome.bin",  
    30.                                              "C:\Documents and Settings\gongjf\Local Settings"  
    31.                                              +"\Application Data\Google\Chrome\Application\chrome.exe");         
    32.           
    33.     }  
    34.   
    35. }  

     打开指定路经ie和chrome方法和ff一样。

    打开1个具体的url

    打开一个浏览器后,我们需要跳转到特定的url下,看下面代码:

    Java代码  收藏代码
    1. import org.openqa.selenium.WebDriver;  
    2. import org.openqa.selenium.firefox.FirefoxDriver;  
    3.   
    4. public class OpenUrl {  
    5.     public static void main(String []args){  
    6.         String url = "http://www.51.com";  
    7.         WebDriver driver = new FirefoxDriver();  
    8.           
    9.         //用get方法  
    10.         driver.get(url);  
    11.           
    12.         //用navigate方法,然后再调用to方法  
    13.         driver.navigate().to(url);  
    14.     }  
    15. }  

    如何关闭浏览器

    测试完成后,需要关闭浏览器

    Java代码  收藏代码
    1. import org.openqa.selenium.WebDriver;  
    2. import org.openqa.selenium.firefox.FirefoxDriver;  
    3.   
    4. public class CloseBrowser {  
    5.     public static void main(String []args){  
    6.         String url = "http://www.51.com";  
    7.         WebDriver driver = new FirefoxDriver();  
    8.           
    9.         driver.get(url);  
    10.           
    11.         //用quit方法  
    12.         driver.quit();  
    13.           
    14.         //用close方法    
    15.         driver.close();  
    16.         }  
    17. }  

    如何返回当前页面的url和title

    有时候我们需要返回当前页面的url或者title做一些验证性的操作等。代码如下:

    Java代码  收藏代码
    1. import org.openqa.selenium.WebDriver;  
    2. import org.openqa.selenium.firefox.FirefoxDriver;  
    3.   
    4. public class GetUrlAndTitle {  
    5.     public static void main(String []args){  
    6.         String url = "http://www.51.com";  
    7.         WebDriver driver = new FirefoxDriver();  
    8.           
    9.         driver.get(url);  
    10.           
    11.                 //得到title  
    12.         String title = driver.getTitle();  
    13.   
    14.                 //得到当前页面url  
    15.         String currentUrl = driver.getCurrentUrl();  
    16.           
    17.                 //输出title和currenturl  
    18.         System.out.println(title+" "+currentUrl);  
    19.           
    20.         }  
    21. }  

    其他方法

    • getWindowHandle()    返回当前的浏览器的窗口句柄
    • getWindowHandles()  返回当前的浏览器的所有窗口句柄
    • getPageSource()         返回当前页面的源码

     

    小结

    从上面代码可以看出操作浏览器的主要方法都来自org.openqa.selenium.WebDriver这个接口中。看了一下源代码这些方法都是在org.openqa.selenium.remote.RemoteWebDriver这个类中实现的,然后不同浏览的driver类继承RemoteWebDriver。

  • 相关阅读:
    vim复制
    嵌入式Linux学习(二)
    (Java实现) 洛谷 P1042 乒乓球
    (Java实现) 洛谷 P1042 乒乓球
    (Java实现) 洛谷 P1071 潜伏者
    (Java实现) 洛谷 P1071 潜伏者
    (Java实现) 洛谷 P1025 数的划分
    (Java实现)洛谷 P1093 奖学金
    (Java实现)洛谷 P1093 奖学金
    Java实现 洛谷 P1064 金明的预算方案
  • 原文地址:https://www.cnblogs.com/yye2010/p/4596889.html
Copyright © 2011-2022 走看看