zoukankan      html  css  js  c++  java
  • 3.selenium控制浏览器操作

    1.控制浏览器窗口大小

    有时候我们希望能以某种浏览器尺寸找开,访问的页面在这种尺寸下运行。例如可以将浏览器设置成移动端大小(480* 800),然后访问移动站点,对其样式进行评估;WebDriver 提供了 manage().window().setSize()方法来设置浏览器的大小。

    • maximize() 设置浏览器最大化
    • setSize() 设置浏览器宽高
    import org.openqa.selenium.By;
    import org.openqa.selenium.Dimension;
    import org.openqa.selenium.chrome.ChromeDriver;
    
    public class Windows {
    
        public static void main(String[] args) throws InterruptedException {
    
            System.setProperty("webdriver.chrome.driver","/usr/local/bin/chromedriver");//这里输入chromedriver的安装目录
            ChromeDriver driver = new ChromeDriver();
            driver.get("https://www.baidu.com/");
            driver.manage().window().maximize();  //浏览器最大化
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            driver.findElement(By.name("wd")).click();
            driver.findElement(By.name("wd")).sendKeys("selenium教程" );
            driver.findElement(By.id("su")).click();
            try {
                Thread.sleep(2000);
            }catch(InterruptedException e){
                System.out.print("线程异常");
            }
            String url = driver.getCurrentUrl();
            driver.get(url);
            driver.manage().window().setSize(new Dimension(480, 800));
            Thread.sleep(2000);
    
            driver.quit();
        }
    }

    2.控制浏览器后退、前进

    在使用浏览器浏览网页时,浏览器提供了后退和前进按钮,可以方便地在浏览过的网页之间切换,WebDriver也提供了对应的back()和forward()方法来模拟后退和前进按钮。下面通过例子来演示这两个方法的使用。

      • back() 模拟浏览器后退按钮
      • forward() 模拟浏览器前进按钮
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.By;
     
     
    public class BrowserGo {
     
      public static void main(String[] args) throws InterruptedException {
     
        WebDriver driver = new ChromeDriver();
     
        //get 到百度首页
        driver.get("https://www.baidu.com/");
        System.out.printf("now accesss %s 
    ", driver.getCurrentUrl());
        Thread.sleep(2000);
     
        //点击“新闻” 链接
        driver.findElement(By.linkText("新闻")).click();
        System.out.printf("now accesss %s 
    ", driver.getCurrentUrl());
        Thread.sleep(2000);
     
        //执行浏览器后退
        driver.navigate().back();
        System.out.printf("back to %s 
    ", driver.getCurrentUrl());
        Thread.sleep(2000);
     
        //执行浏览器前面
        driver.navigate().forward();
        System.out.printf("forward to %s 
    ", driver.getCurrentUrl());
        Thread.sleep(2000);
     
        driver.quit();
      }
    }

    3.刷新页面

    有时候需要手动刷新(F5) 页面。

    • refresh() 刷新页面(F5)
    • driver.navigate().refresh();
  • 相关阅读:
    Web前端学习第三天·fighting_常用的一些标签(一)
    Web前端学习第七天·fighting_CSS样式的编写和使用(二)
    Web前端学习第八天·fighting_使用CSS美化文字(一)
    WPF 自定义RadioButton样式
    WPF自定义控件与样式自定义按钮(Button)
    WPF 自定义Calendar样式(日历样式,周六周日红色显示)
    WPF 自定义TextBox带水印控件,可设置圆角
    WPF 自定义CheckBox样式
    常见web UI 元素操作 及API使用
    selenium定位下拉框
  • 原文地址:https://www.cnblogs.com/peiminer/p/13559430.html
Copyright © 2011-2022 走看看