窗口与导航-----Selenium快速入门(十三)
前面所讲的,大部分是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快速入门(十三)的更多相关文章
- 隐式等待-----Selenium快速入门(九)
有时候,网页未加载完成,或加载失败,但是我们后续的代码就已经开始查找页面上的元素了,这通常将导致查找元素失败.在本系列Selenium窗口切换-----Selenium快速入门(六)中,我们就已经出现 ...
- 元素(WebElement)-----Selenium快速入门(三)
上一篇<元素定位-----Selenium快速入门(二)>说了,如何定位元素,本篇说说找到的元素(WebElement)该怎么用. WebElement常用方法: 返回值 方法名 说 ...
- Selenium窗口切换-----Selenium快速入门(六)
有时候,我们打开多个窗口,进行多窗口操作,那么窗口间该如何切换呢? 切换的方法有两个,一个是通过窗口标题来验证,另一个是通过窗口特定的内容来验证,这两个方法都要求得到的标题或内容是唯一的. 用到的相关 ...
- js框操作-----Selenium快速入门(八)
js框,就是JavaScript中的警告框(alert),确认框(confirm),提示框(prompt),他们都是模态窗口.什么是模态窗口,大家可以自行百度一下,简单说就是弹出的窗口是在最顶端的,你 ...
- Selenium框架切换-----Selenium快速入门(七)
上一篇说了窗口的切换,本篇说说框架的切换. 切换框架:是指切换html中的iframe标签元素或者frame标签元素,注意,并不包括frameset 以下是常用的方法: 方法 说明 WebDriver ...
- Selenium快速入门(下)
Frame相关 import time from selenium import webdriver from selenium.common.exceptions import NoSuchElem ...
- Selenium简介与环境搭配-----Selenium快速入门(一)
Selenium是一套自动化测试框架.官方网站是:https://www.seleniumhq.org/ 某些童鞋访问可能需要FQ. Selenium支持多种语言开发,例如Java,Python,C ...
- 元素定位-----Selenium快速入门(二)
一.eclipse设置 工欲善其事必先利其器,在说元素定位之前,先来设置下eclipse. 首先放大一下字体,点击windows-preferences 其次,eclipse对于java的智能提示默认 ...
- 终结篇:RemoteWebDriver与Grid简介-----Selenium快速入门(十五)
Selenium的基本使用,已经介绍得差不多了,今天来简单说说RemoteWebDriver与Grid,也是本系列的最后一篇. 还记得本系列第一章(Selenium简介与环境搭配)的配置中,提到我们下 ...
随机推荐
- 第八章 高级搜索树 (xa3)红黑树:插入
- 通过阿里OSS文件服务返回的URL获取文件流下载
我们都知道将文件上传到阿里的OSS文件服务上后,可以通过generatePresignedUrl(bucketName, key, expiration)方法获取该文件的防问路径,但是当我们知道该文件 ...
- ios 8 联系人ABPeoplePickerNavigationController
一. ios 联系人ABPeoplePickerNavigationControllerDelegate方法,新添加下面两个联系人选中方法,适配iOS8需要实现 // Called after a p ...
- discuz回贴通知插件实现-插件的多语言
如果涉及到页面的展示,模板,提示信息,通常会 1.建立好需要的文字的翻译 在disucz的data/plugindata目录创建一个插件所使用的语言文件,命名方式为: 插件标识符.lang.php ...
- Spring框架中Bean管理的常用注解
1. @Component:组件.(作用在类上)可以作用在任何一个类上 2. Spring中提供@Component的三个衍生注解:(功能目前来讲是一致的) * @Controller -- 作用在W ...
- jQuery中animate()对Firefox无效的解决办法
在使用 animate()做返回顶部的动画时,会出现对Firefox无效的情况,如: $('body').animate({scrollTop:'0'},500); 它对Chrome,IE,Opera ...
- Restful API设计要点
1 Restful API时面向资源,不能面向动作: 2 充分利用http协议的GET, HEAD, OPTION, PUT, POST, DELETE几种方法: 3 GET方法用于获取资源,是幂等和 ...
- Codeforces 600A. Extract Numbers 模拟
A. Extract Numbers time limit per test: 2 seconds memory limit per test: 256 megabytes input: standa ...
- [BAT]远程执行或停止计划任务
执行 schtasks /run /tn "IPADForAdvisor_QA_APITest" /s SZPCWIN2K801 /u msdomain1\jzhang6 /p j ...
- Jmeter中控制某一段脚本失败后重复执行,并在每个HTTP Request名字中加上循环次数
================================================== 1.While Controller之前有一个BeanShell Sampler,用于Init N ...