随笔分类 - Selenium2
Selenium2 学习笔记
摘要:以 Chrome 为例,通过设置 chromeoption 的参数即可实现启动浏览器后,开启手机模式。相应设置的源代码如下所示: 1 chromeOptions = webdriver.ChromeOptions() 2 chromeOptions.add_argument("disable-inf
阅读全文
摘要:今天又被坑了一把,不知谁把 Slave 机的火狐浏览器版本升级为了 48 的版本,导致网页自动化测试脚本无法启动火狐的浏览器,相关的网页自动化脚本全线飘红(可惜不是股票,哈哈哈...),报版本不兼容的错误(当前 selenium-server 版本为 2.53.1,火狐升级后版本为 48.0.2)。
阅读全文
摘要:今天在写WebDriver处理弹出框(alert、confirm、prompt)演示实例脚本分发给朋友时,在其执行时未能成功执行,对应的部分错误详情如下: 经查,chromedriver V2.21 启动 chrome V5* 版本时,存在已知修复的缺陷 1362,详情截图如下所示: 同时,由chr
阅读全文
摘要:弹出框是网页自动化测试常见得操作页面元素之一,常见的JavaScript弹出框有如下三种: 1、alert(message):方法用于显示带有一条指定消息和一个 OK 按钮的警告框。DemoAlert.html 示例代码如下所示: 2、confirm(message):方法用于显示一个带有指定消息和
阅读全文
摘要:通常在 WebUI 自动化测试过程中必然会涉及到文件上传的自动化测试需求,而开发在进行相应的技术实现是不同的,粗略可划分为两类:input标签类(类型为file)和非input标签类(例如:div、a或其他方式结合实现)。 非input标签类因其有各式各样的实现方式,需要考虑具体的场景,因而此文对此
阅读全文
摘要:今天有个朋友在群里问,为何脚本运行不通过,其脚本操作步骤简单描述如下: 1、启动火狐浏览器 2、打开百度 3、查询框输入关键字 4、点击按钮【百度一下】 脚本挺简单的,其给出的应用报错信息如下所示: 看了一下他的脚本,发现脚本没有问题,然后要了一份详细的报错信息,发现了如下所示的错误: 由以上信息看
阅读全文
摘要:好久没有写博文了,今天在给部门新人演示 Selenium WebDriver 启动其支持的各种浏览器时,启动 IE 时总是无法打开对应的百度网址,页面如下所示: 控制台及日志显示的错误信息如下所示: org.openqa.selenium.remote.SessionNotFoundExceptio
阅读全文
摘要:Selenium 获取 JavaScript 返回值非常简单,只需要在 js 脚本中将需要返回的数据 return 就可以,然后通过方法返回 js 的执行结果,方法源码如下所示: 1 /** 2 * Get Object of return from js 3 * 4 ...
阅读全文
摘要:之前有写过两篇博文讲述了 WebUI 自动化测试脚本中常用的截图方法,敬请参阅如下所示链接:浏览器显示区域截图浏览器指定区域截图那么当需要截取的区域不在浏览器显示窗口范围之内时,之前的方法显然无法满足,那么该如何操作呢?刷新页面,相当于页面归位操作判断要截取的区域范围与当前浏览器显示区域大小关系,若...
阅读全文
摘要:获取 body 元素大小的方法,非常简单,直接上码,敬请参阅! 1 /** 2 * Get body size 3 * 4 * @author Aaron.ffp 5 * @version V1.0.0: autoSeleniumDemo main....
阅读全文
摘要:我在之前的文章中曾给出浏览器显示区域截图的方法,具体请参阅 。或许,有些小主已经想到了,每次都获取整个显示区域的截图存储,那么经过一段时间后,所使用的图片服务器的容量将会受到极大的挑战,尤其是在产品需要获取页面样式截图或断言失败截图比较多的情况下。解决此问题有两种途径,一是定期清理过期的样式截图;二...
阅读全文
摘要:在自动化脚本编写过程中,操作元素之前,需要对元素进行高亮显示(通过修改元素的边框样式),同时进行截图,以记录操作的元素对象。在实际应用中较为少见,通常用于演示,或者发生错误时的屏幕截图捕捉,用于错误报告分析。直接上码了...... 1 /** 2 * 3 * @func...
阅读全文
摘要:通过 JS 或 JQuery 获取到元素后,通过offsetLeft、offsetTop、offsetWidth、offsetHeight 即可获得元素的位置和大小,非常的简单,直接上源码了,敬请参阅! 1 /** 2 * Get element position by jquer...
阅读全文
摘要:自动化测试过程中,有时需要获取元素的位置、大小,以获取元素的位置,通过 Actions 模拟鼠标,进行相对坐标操作。例如,有些元素定位不方便,或者需要对某一元素相对区域范围进行暴力点击测试,此时就需要获取相应的坐标。获取元素位置和大小的源码比较简单,直接上码了......敬请参阅! 1 /*...
阅读全文
摘要:非常简单的源码,敬请各位小主参阅。若有不足之处,敬请大神指正,不胜感激! 1 /** 2 * Verify the element exist or not 3 * 4 * @author Aaron.ffp 5 * @version V1...
阅读全文
摘要:在自动化脚本编写过程中,经常需要获取页面元素的文本进行判断,以便对于不同的文本进行不同的处理。比如:很多的购物网站,加入购物车的按钮是有多个状态的(加入购物车、到货通知、暂不销售等),那么在实际的操作过程中,需要对此按钮对应的不同的值,执行相应的逻辑。代码相对比较简单,在此不再详细说明了,直接上码,...
阅读全文
摘要:日常的 Web UI 自动化测试过程中,get 或navigate 到指定的页面后,若想截图的元素或者指定区域范围不在浏览器的显示区域内,则通过截屏则无法获取相应的信息,反而浪费了无畏的图片服务器资源,当然,最重要的还是未能达到自己的预期,是不是很内伤啊。此时,我们就不得不像正常用户操作一样,通过滚...
阅读全文
摘要:非常简单的方法封装,就不啰嗦了,直接上码咯 ^_^ 1 /** 2 * Get element. It will be return null when there is not such element. 3 * 4 * @author Aaron....
阅读全文
摘要:通常我们在进行自动化测试的过程中,有时候需要对页面进行截图,以保存此时的页面,用作后续的判断或测试报告。在 Web UI 自动化测试脚本过程中,通常有以下几种截图的要求:常规截图 - 页面样式(全页面)。此种应用也较为广泛,主要发生区域为:UI 或测试人员对页面样式的检验,应用于所有页面的截图,将对...
阅读全文
摘要:在 Web UI 自动化测试的过程中,通常会测试页面在不同分辨率下的显示效果,即在不同大小的显示器上全屏浏览器后的页面展示,此种测试方法需要购置不同大小的显示器,或者频繁的设置屏幕分辨率,不仅浪费了大量的金钱,同时也需要有人值守,从而使测试变成了半自动化,背离了自动化测试的初衷,也在一定程度上困扰了...
阅读全文