摘要: 自动化用例是由程序去执行,因此有时候打印的错误信息并不十分明确。如果在脚本执行出错的时候能对当前窗口截图保存,那么通过图片就可以非常直观地看出出错的原因。 WebDriver提供了截图函数getScreenshotAs()来截取当前窗口。 脚本运行完成后打开D盘,就可以找到screenshot.pn 阅读全文
posted @ 2019-08-05 15:40 支照 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 虽然WebDriver提供了操作浏览器的前进和后退方法,但对于浏览器滚动条并没有提供相应的操作方法。在这种情况下,就可以借助JavaScript来控制浏览器的滚动条。WebDriver提供了executeScript()方法来执行JavaScript代码。 用于调整浏览器滚动条位置的JavaScri 阅读全文
posted @ 2019-08-05 15:39 支照 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 有时候我们需要验证浏览器中Cookie是否正确, 因为基于真实Cookie的测试是无法通过白盒测试和集成测试进行的。WebDriver提供了操作Cookie的相关方法可以读取、 添加和删除Cookie信息。 WebDriver 操作Cookie的方法: getCookies() 获得所有 cooki 阅读全文
posted @ 2019-08-05 15:38 支照 阅读(765) 评论(0) 推荐(0) 编辑
摘要: 对于通过input标签实现的上传功能,可以将其看作是一个输入框,即通过sendKeys()指定本地文件路径的方式实现文件上传。 创建upfile.html文件,代码如下: java upload_file upload_file 阅读全文
posted @ 2019-08-05 15:37 支照 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 有时我们会碰到下拉框,WebDriver提供了Select类来处理下接框。 如百度搜索设置的下拉框,如下图: 搜索下拉框实现代码如下: 操作下接框代码如下: Select类用于定位select标签。 selectByValue()方法符用于选取 标签的value值。 阅读全文
posted @ 2019-08-05 15:36 支照 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 在 WebDriver中处理JavaScript所生成的alert、confirm以及prompt十分简单,具体做法是使用switch_to_alert()方法定位到alert/confirm/prompt,然后使用text/accept/dismiss/sendKeys等方法进行操作。 getTe 阅读全文
posted @ 2019-08-05 15:36 支照 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 在页面操作过程中有时候点击某个链接会弹出新的窗口, 这时就需要主机切换到新打开的窗口上进行操作。WebDriver提供了switchTo().window()方法可以实现在不同的窗口之间切换。 以百度首页和百度注册页为例,在两个窗口之间的切换如下图。 实现窗口切换的代码如下: 在本例中所涉及的新方法 阅读全文
posted @ 2019-08-05 15:35 支照 阅读(461) 评论(0) 推荐(0) 编辑
摘要: 在 Web 应用中经常会遇到 frame/iframe 表单嵌套页面的应用, WebDriver 只能在一个页面上对元素识别与 定位, 对于 frame/iframe 表单内嵌页面上的元素无法直接定位。 这时就需要通过 switchTo().frame()方法将当前定 位的主体切换为 frame/i 阅读全文
posted @ 2019-08-05 15:34 支照 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 在第(五)节我们已经学习了8种定位方法, 那8种定位方法是针对单个元素定位的, WebDriver还提供了另外8种用于定位一组元素的方法。 定位一组元素的方法与定位单个元素的方法类似,唯一的区别是在单词 findElement 后面多了一个 s 表示复数。 打印结果: 阅读全文
posted @ 2019-08-05 15:33 支照 阅读(285) 评论(0) 推荐(0) 编辑
摘要: WebDriver提供了两种类型的等待:显式等待和隐式等待。 1.显示等待 WebDriver提供了显式等待方法,专门针对某个元素进行等待判断。 WebDriverWait类是由WebDirver提供的等待方法。在设置时间内,默认每隔一段时间检测一次当前页面元素是否存在,如果超过设置时间检测不到则抛 阅读全文
posted @ 2019-08-05 15:32 支照 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 不管是在做功能测试还是自动化测试,最后一步需要拿实际结果与预期进行比较。这个比较的称之为断言。 我们通常可以通过获取title 、URL和text等信息进行断言。text方法在前面已经讲过,它用于获取标签对之间的文本信息。 getTitle(): 用于获得当前页面的title。 getCurrent 阅读全文
posted @ 2019-08-05 15:21 支照 阅读(522) 评论(0) 推荐(0) 编辑
摘要: Keys()类提供了键盘上几乎所有按键的方法。 前面了解到, sendKeys()方法可以用来模拟键盘输入, 除此之 外, 我们还可以用它来输入键盘上的按键, 甚至是组合键, 如 Ctrl+A、 Ctrl+C 等。 需要说明的是,上面的脚本没有什么实际意义,但向我们展示了模拟键盘各种按键与组合键的用 阅读全文
posted @ 2019-08-05 15:20 支照 阅读(1022) 评论(0) 推荐(0) 编辑
摘要: 通过前面例子了解到,可以使用click()来模拟鼠标的单击操作,现在的Web产品中提供了更丰富的鼠标交互方式, 例如鼠标右击、双击、悬停、甚至是鼠标拖动等功能。在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类提供。 Actions 类提供了鼠标操作的常用方法: con 阅读全文
posted @ 2019-08-05 15:19 支照 阅读(2877) 评论(0) 推荐(0) 编辑
摘要: (六)控制浏览器操作 1.控制浏览器窗口大小 有时候我们希望能以某种浏览器尺寸找开,访问的页面在这种尺寸下运行。例如可以将浏览器设置成移动端大小(480 800),然后访问移动站点,对其样式进行评估;WebDriver 提供了 manage().window().setSize()方法来设置浏览器的 阅读全文
posted @ 2019-08-05 15:18 支照 阅读(628) 评论(0) 推荐(0) 编辑
摘要: 前面我们已经学习了定位元素, 定位只是第一步, 定位之后需要对这个元素进行操作, 或单击(按钮) 或 输入(输入框) , 下面就来认识这些最常用的方法。 1.WebDriver 常用方法 下面先来认识 WebDriver 中最常用的几个方法: clear() 清除文本。 sendKeys( valu 阅读全文
posted @ 2019-08-05 15:18 支照 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 1.selenium定位方法 Selenium提供了8种定位方式。 id name class name tag name link text partial link text xpath css selector 这8种定位方式在Java selenium中所对应的方法为: findElemen 阅读全文
posted @ 2019-08-05 15:16 支照 阅读(405) 评论(0) 推荐(0) 编辑
摘要: 1.下载浏览器驱动 当selenium升级到3.0之后,对不同的浏览器驱动进行了规范。如果想使用selenium驱动不同的浏览器,必须单独下载并设置不同的浏览器驱动。 各浏览器下载地址: Firefox浏览器驱动: "geckodriver" Chrome浏览器驱动: "chromedriver" 阅读全文
posted @ 2019-08-05 15:14 支照 阅读(643) 评论(0) 推荐(0) 编辑
摘要: 1.通过jar包安装 点击 " Selenium下载" 链接 你会看到Selenium Standalone Server的介绍: The Selenium Server is needed in order to run Remote Selenium WebDriver. Selenium 3. 阅读全文
posted @ 2019-08-05 15:14 支照 阅读(631) 评论(0) 推荐(0) 编辑
摘要: 1.安装IntelliJ IDEA 你可能会问,为什么不用Eclipse呢?随着发展IntelliJ IDEA有超越Eclipse的势头,JetBrains公司的IDE基本上已经一统了各家主流编程语言的江湖。考虑到 Java IDE的流行趋势,本书中决定选用IntelliJ IDEA。 当然, 选择 阅读全文
posted @ 2019-08-05 15:12 支照 阅读(222) 评论(0) 推荐(0) 编辑
摘要: (一)环境安装之Java 1.安装java 点击 "JDK8下载" ,根据自己的平台,选择相应的版本进行下载。 小知识: Java环境分JDK和JRE ,JDK就是Java Development Kit。简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发 环境和运行环境。JRE是Ja 阅读全文
posted @ 2019-08-05 15:11 支照 阅读(229) 评论(0) 推荐(0) 编辑