(六)控制浏览器操作

1.控制浏览器窗口大小

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

  • maximize() 设置浏览器最大化
  • setSize() 设置浏览器宽高
import org.openqa.selenium.Dimension;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;public class Browser {public static void main(String[] args) throws InterruptedException {WebDriver driver= new ChromeDriver();driver.get("https://www.baidu.cn");driver.manage().window().maximize();Thread.sleep(2000);driver.get("https://m.baidu.cn");driver.manage().window().setSize(new Dimension(480, 800));Thread.sleep(2000);driver.quit();}
}

在 PC 端执行自动化测试脚本大多的情况下是希望浏览器在全屏幕模式下执行, 那么可以使用 maximize()方法使打开的浏览器全屏显示, 其用法与 setSize()相同, 但它不需要任何参数。

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 \n", driver.getCurrentUrl());Thread.sleep(2000);//点击“新闻” 链接driver.findElement(By.linkText("新闻")).click();System.out.printf("now accesss %s \n", driver.getCurrentUrl());Thread.sleep(2000);//执行浏览器后退driver.navigate().back();System.out.printf("back to %s \n", driver.getCurrentUrl());Thread.sleep(2000);//执行浏览器前面driver.navigate().forward();System.out.printf("forward to %s \n", driver.getCurrentUrl());Thread.sleep(2000);driver.quit();}
}

为了看清脚本的执行过程,下面每操作一步都通过printf()方法来打印当前的URL地址。

3.刷新页面

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

  • refresh() 刷新页面(F5)
……
//刷新页面
driver.navigate().refresh();
……

转载于:https://www.cnblogs.com/zhizhao/p/11303175.html

Selenium常用API的使用java语言之7-控制浏览器操作相关推荐

  1. java控制浏览器_Selenium常用API的使用java语言之7-控制浏览器操作

    (六)控制浏览器操作 1.控制浏览器窗口大小 有时候我们希望能以某种浏览器尺寸找开,访问的页面在这种尺寸下运行.例如可以将浏览器设置成移动端大小(480* 800),然后访问移动站点,对其样式进行评估 ...

  2. 详解介绍Selenium常用API的使用--Java语言(史无前例的完整)

    一共分为二十个部分:环境安装之Java.环境安装之IntelliJ IDEA.环境安装之selenium.selenium3浏览器驱动.selenium元素定位.控制浏览器操作.WebDriver常用 ...

  3. Selenium常用API的使用java语言之6-WebDriver常用方法

    前面我们已经学习了定位元素, 定位只是第一步, 定位之后需要对这个元素进行操作, 或单击(按钮) 或 输入(输入框) , 下面就来认识这些最常用的方法. 1.WebDriver 常用方法 下面先来认识 ...

  4. Selenium常用API的使用java语言之1-环境安装之Java

    (一)环境安装之Java 1.安装java 点击 JDK8下载,根据自己的平台,选择相应的版本进行下载. 小知识: Java环境分JDK和JRE ,JDK就是Java Development Kit. ...

  5. Selenium常用API的使用java语言之13-多表单切换

    在 Web 应用中经常会遇到 frame/iframe 表单嵌套页面的应用, WebDriver 只能在一个页面上对元素识别与 定位, 对于 frame/iframe 表单内嵌页面上的元素无法直接定位 ...

  6. python+selenium——详解介绍Selenium常用API的使用--python语言(完整版)

    参考:http://www.51testing.com/html/03/n-3725703-2.html from selenium import webdriver driver = webdriv ...

  7. Selenium Web 自动化 - Selenium常用API

    Selenium Web 自动化 - Selenium常用API 2016-08-01 目录 1 对浏览器操作   1.1 用webdriver打开一个浏览器   1.2 最大化浏览器&关闭浏 ...

  8. java selenium常用API(WebElement、iFrame、select、alert、浏览器窗口、事件、js) 一

     WebElement相关方法 1.点击操作 WebElement button = driver.findElement(By.id("login")); button.clic ...

  9. JAVA语言中流程控制(顺序结构、判断语句、循环语句)

    流程控制: 程序在执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的,所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过控制语句的执行顺序来实现想要的功能.java中流程控制有:顺 ...

最新文章

  1. linux落字效果代码,Shell中实现飞行文字效果
  2. Linux系统下Oracle11g r1的安装之四: 开始安装Oracle
  3. The number of object passed must be even but was [1]
  4. WordPress博客杂志CMS主题用户中心
  5. 网络安装archlinux(2012.8.20)笔记
  6. hj212协议如何和php通讯,5G/4G边缘计算网关如何实现HJ212协议上报
  7. java私塾架构二,小弟我在Java私塾学习期间的学习源码
  8. 目标检测-2019年4篇目标检测算法最佳综述
  9. win11电脑加密文件夹的两种方法
  10. 巴西区域赛补题C. Creating Multiples —— 数学*
  11. 游狼html鼠标,《速评13》65g极轻FPS鼠标游狼SK
  12. iphone远没有android好用,IPhone真的比Android流畅?不要被视觉欺骗了
  13. 功率开关的RC-Snubber电路设计
  14. 1. 初识Jackson -- 世界上最好的JSON库
  15. 美国将派大量自动昆虫机器人到火星执行任务
  16. 二叉树遍历(非递归)
  17. 找不到工作怎么办,多半是“废了”,按这3步你也能找到工作
  18. JZ2440:yaffs2 格式根文件系统制作
  19. Nachos线程管理
  20. python—生成带logo的二维码(零基础向)

热门文章

  1. 谷歌AMP和百度MIP,你选哪个?
  2. 《CUDA C编程权威指南》——3.4 避免分支分化
  3. java Servlet Filter 拦截Ajax请求,统一处理session超时的问题
  4. OC与c混编实现Java的String的hashcode()函数
  5. SpringBoot之二:部署Spring Boot应用程序方式
  6. Windows server 2003下Oracle10g安装图解
  7. 2008.09.20三多寨
  8. webpack5--css 打包
  9. 一个浏览器插件,测试xpath的工具
  10. mysql基础(九) 索引和视图