前面所讲的,大部分是WebDriver这个接口以及相关的类的使用。而本文所讲的窗口与导航,也是里面的内容,而且非常简单,目测就能学会。

  一。窗口,也就是window,这里的窗口是指浏览器窗口。他的方法主要有:

返回类型 方法说明
void fullscreen() 将当前浏览器窗口最大化
Point getPosition() 获得浏览器左上角位置
Dimension getSize() 获得当前窗口的大小
void maximize() 将当前窗口最大化
void setPosition(Point targetPosition) 设置窗口的位置
void setSize(Dimension targetSize) 设置窗口的大小

  需要注意的是,最大化和全屏不是一回事,最大化还有标题栏,还看的到系统任务栏,全屏就是全遮住了。例如一般浏览器按F11就是全屏了,大家可以试试。

  

  二。而导航,也是非常简单,就是控制窗口的前进,后退,刷新等。方法主要有:

返回类型
方法说明
void back() 后退
void forward() 前进
void refresh() 刷新
void to(java.lang.String url) 跳转到指定url
void to(java.net.URL url) 跳转到指定url

  

  三。driver.quit和driver.close到底有什么不同

  官方的说明是:

  driver.close:Close the current window, quitting the browser if it's the last window currently open.(关掉最后一个打开的窗口)

  driver.quit:Quits this driver, closing every associated window.(关掉所有相关的窗口)

  可见,driver.quit在关掉窗口方面更为彻底。老规矩,不信的话,可以自己扒下源码。

  下面是一些操作窗口的代码:

 System.setProperty("webdriver.chrome.driver", "D:/WorkSpace/SeleniumTest/tools/chromedriver.exe");
WebDriver driver=new ChromeDriver();
driver.get("http://www.baidu.com");
Thread.sleep(2000); //最大化
driver.manage().window().maximize();
Thread.sleep(2000); //全屏
driver.manage().window().fullscreen();
Thread.sleep(2000); //打印当前位置,大小
System.out.println("当前位置:"+driver.manage().window().getPosition());
System.out.println("当前大小:"+driver.manage().window().getSize()); //重新设置窗口大小和位置
driver.manage().window().setSize(new Dimension(400, 300));
Thread.sleep(2000);
driver.manage().window().setPosition(new Point(100, 100));
driver.quit();

  效果如下:

  打印出的信息

  

  整个流程:

  

  

窗口与导航-----Selenium快速入门(十三)的更多相关文章

  1. 隐式等待-----Selenium快速入门(九)

    有时候,网页未加载完成,或加载失败,但是我们后续的代码就已经开始查找页面上的元素了,这通常将导致查找元素失败.在本系列Selenium窗口切换-----Selenium快速入门(六)中,我们就已经出现 ...

  2. 元素(WebElement)-----Selenium快速入门(三)

    上一篇<元素定位-----Selenium快速入门(二)>说了,如何定位元素,本篇说说找到的元素(WebElement)该怎么用. WebElement常用方法:  返回值  方法名  说 ...

  3. Selenium窗口切换-----Selenium快速入门(六)

    有时候,我们打开多个窗口,进行多窗口操作,那么窗口间该如何切换呢? 切换的方法有两个,一个是通过窗口标题来验证,另一个是通过窗口特定的内容来验证,这两个方法都要求得到的标题或内容是唯一的. 用到的相关 ...

  4. js框操作-----Selenium快速入门(八)

    js框,就是JavaScript中的警告框(alert),确认框(confirm),提示框(prompt),他们都是模态窗口.什么是模态窗口,大家可以自行百度一下,简单说就是弹出的窗口是在最顶端的,你 ...

  5. Selenium框架切换-----Selenium快速入门(七)

    上一篇说了窗口的切换,本篇说说框架的切换. 切换框架:是指切换html中的iframe标签元素或者frame标签元素,注意,并不包括frameset 以下是常用的方法: 方法 说明 WebDriver ...

  6. Selenium快速入门(下)

    Frame相关 import time from selenium import webdriver from selenium.common.exceptions import NoSuchElem ...

  7. Selenium简介与环境搭配-----Selenium快速入门(一)

    Selenium是一套自动化测试框架.官方网站是:https://www.seleniumhq.org/  某些童鞋访问可能需要FQ. Selenium支持多种语言开发,例如Java,Python,C ...

  8. 元素定位-----Selenium快速入门(二)

    一.eclipse设置 工欲善其事必先利其器,在说元素定位之前,先来设置下eclipse. 首先放大一下字体,点击windows-preferences 其次,eclipse对于java的智能提示默认 ...

  9. 终结篇:RemoteWebDriver与Grid简介-----Selenium快速入门(十五)

    Selenium的基本使用,已经介绍得差不多了,今天来简单说说RemoteWebDriver与Grid,也是本系列的最后一篇. 还记得本系列第一章(Selenium简介与环境搭配)的配置中,提到我们下 ...

随机推荐

  1. nyoj743-复杂度 【排列组合】

    http://acm.nyist.net/JudgeOnline/problem.php?pid=743 复杂度 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 fo ...

  2. 关于"undefined reference"错误

    这个错误换句话说: 链接的时候找不到实现的文件(谨记从这个入手!). 可能导致的原因有: 1. 没有链接库文件,包括静态库或动态库. 2. 链接文件的顺序问题,先后依赖问题,把被依赖的放后面. 3. ...

  3. c语言指针数组和结构体的指针

    指向数组的指针,先初始化一个数组,使用传统方式遍历 void main() { ] = { ,,,, }; ; i < ; i++) { printf("%d,%x\n", ...

  4. golang通过反射动态调用方法

    func Call(m map[string]interface{}, name string, params ...interface{}) ([]reflect.Value, error) { f ...

  5. 【原创】有关Silverlight中异常“XmalParseEception” 通用解决思路

    针对于 此类 XamlParse问题,大部分都是 silverlight/WPF 前段 xmal文件问题,仔细逐行审查 接口解决.

  6. AOP不起作用的原因之一

    在-servlet.xml配置context:component-scan后,Spring在扫描包时,会将所有带 @Service注解的类都扫描到容器中.而-servlet.xml和applicati ...

  7. PAT 1078 字符串压缩与解压(20)(代码+思路)

    1078 字符串压缩与解压(20 分) 文本压缩有很多种方法,这里我们只考虑最简单的一种:把由相同字符组成的一个连续的片段用这个字符和片段中含有这个字符的个数来表示.例如 ccccc 就用 5c 来表 ...

  8. 12月6日 被引入的jsp 页面,引入 js 要注意结束符 要用 </script> 而不是 />

    12月6日  被引入的jsp 页面,引入 js 要注意结束符 要用  </script> 而不是 />

  9. 树结构(三)----平衡二叉树(AVL树)

    将二叉排序树的的缺点优化,继承二叉排序的树的优化 左子树和右子树的高度差的绝对值不超过1

  10. 2018.07.23 洛谷P4513 小白逛公园(线段树)

    传送门 线段树常规操作了解一下. 单点修改维护区间最大连续和. 对于一个区间,维护区间从左端点开始的连续最大和,从右端点开始的连续最大和,整个区间最大和,区间和. 代码如下: #include< ...