随笔分类 - Selenium +Java
摘要:问题现象 今天在执行自动化脚本时,浏览器还没打开直接报错了,具体报错如下图: 经过一顿度娘会发现,这不是我们写程序脚本的错,而是Selenium的一个bug,无数人都在各种网站反馈了这个问题,而且貌似Selenium的开发者们暂时不打算修复这个问题,因为有人发现了一些变通方案来实现浏览器窗口最大化,
阅读全文
摘要:原理: 自动到指定的地址下载相应的浏览器驱动保存到缓存区 ~/.cache/selenium 痛点: 解决因Chrome浏览器升级,driver需要同步升级,要重新下载驱动的问题 区别: 传统方式 需要下载driver驱动,使用System.setProperty设置路径,或者配置path环境变量
阅读全文
摘要:报错 如下图: 解决方案: pom文件添加依赖: <!-- 不添加此依赖会抛com.google.common.util.concurrent.SimpleTimeLimiter.create异常--> <dependency> <groupId>com.google.guava</groupId>
阅读全文
摘要:现象 写了这么长时间,一直没有注意这样一个细节,什么细节? 就是Chrome浏览器执行脚本时,在左上角会显示这样一句话,如下图,红圈所示: 但我们有些场景下,不希望这个提示出现。 如何去掉提示 本文探索了几种语言去掉这个提示的方法,希望对小伙伴有帮助。 Java ChromeOptions opti
阅读全文
摘要:报错信息 org.openqa.selenium.InvalidArgumentException: invalid argument (Session info: chrome=92.0.4515.131) Build info: version: '3.9.1', revision: '63f7
阅读全文
摘要:一、 JDK安装 1.1、官网下载1.8版本 可参考以下链接步骤: https://blog.csdn.net/u014801367/article/details/86288078 1.2、jdk环境环境变量配置 步骤一、 打开终端输入 vi ~/.bash_profile 进入文件编辑 步骤二、
阅读全文
摘要:一、写在前面 之前写过一些关于元素定位的文章,但是感觉都是很碎片,现在想做个整合,便有了这篇文章。 二、xpath的定位方法 关于**Xpath**定位方法,网上写的已经很成熟了,现已百度首页为例,如下图: 再结合我之前所写整理如下。 1、通过绝对路径方式定位 /html/body/div[1]/d
阅读全文
摘要:一、环境准备 1、本地引入jar 从http://selenium-release.storage.googleapis.com/index.html?path=3.9/,下载selenium-server-standalone-3.9.1.jar到C盘根目录下. 打开DOS命令窗口,命令行进入到M
阅读全文
摘要:http://npm.taobao.org/mirrors/chromedriver/
阅读全文
摘要:1.在selenium 自动化过程中,时长遇到需要进行上传文件操作。 这里推荐使用Autoit 工具。首先下载相关工具: https://www.autoitscript.com/site/autoit/downloads/在AutoIt和AutoIt Editor处下拉菜单 2.点击“AutoIT
阅读全文
摘要:写在前面 随着win10系统的普及,使得Edge浏览器得到广泛使用。从自动化角度看,自然微软也一直不断提供着支持服务,系统版本更新,对应的Edge浏览器版本也在更新,当然对应的驱动版本也会发生变化。 早在去年使用Edge浏览器做自动化测试,是按照操作系统的版本去下载Edge浏览器的驱动。由于最近对w
阅读全文
摘要:前言 上一小节我们已经学习了Page Object设计模式,优势很明显,能更好的体现java的面向对象思想和封装特性。但同时也存在一些不足之处,那就是随着这种模式使用,随着元素定位获取,元素定位与页面操作方法都在一个类里维护,会造成代码冗余度过高。 相信使用过spring的同学肯定都知道,基于注解方
阅读全文
摘要:前言 Page Object(页面对象)模式,是Selenium实战中最为流行,并且被自动化测试同学所熟悉和推崇的一种设计模式之一。在设计测试时,把页面元素定位和元素操作方法按照页面抽象出来,分离成一定的对象,然后再进行组织。 相信每个做自动化测试的同学,一定会遇到这样一个非常头疼的问题,那就是页面
阅读全文
摘要:前言 早期我们使用TestNG 来做数据驱动进行测试,测试数据是写在测试用例脚本中。这会使得测试脚本的维护工作量很大。因此我们可以将测试的数据和脚本分开。 而我们经常使用会使用csv文件来做为导出数据时的存储文件,因此,可以通过读取 CSV文件存储数据,然后将数据传递给测试脚本进行测试。那么接下来我
阅读全文
摘要:前言 Sikuli-IDE用起来方便,但是用到实际项目中还是有局限性的,Sikuli提供了Sikuli-Script的jar包,在Sikuli-X的安装目录下,这样就可以在Idea中使用JAVA编写代码了,并用Sikuli-Script和selenium完美结合使用。 模拟场景 安装配置 首先下载s
阅读全文
摘要:Ajax浮动框 我们常遇到的某些网站首页输入框,点击后显示的浮动下拉热点,如下图: 实际案例 模拟场景如下: hao123首页搜索输入框,单击搜索框,点击浮动框中的哪吒票房破30亿,单击后选项的文字内容会显示在搜索框中,并进行搜索 具体代码如下: 运行效果 以上就是关于 Ajax浮动框处理,仅供参考
阅读全文
摘要:写在前面 自动化测试过程中,运行失败截图可以很好的帮我们定位问题,因此,截图操作也是我们自动化测试中的一个重要环节。 截图方法 1、通过截图类TakeScreenshout实现截图 特点:截取浏览器窗体内的内容,不包括浏览器的菜单和桌面的任务栏区域 具体示例代码如下: 2、通过Robot对象截屏 特
阅读全文
摘要:前言 一般的日期控件都是input标签下弹出来的,设置日期使用selenium中的sendKeys 方法就可以解决。 但是我们也会碰到下面的时间日期控件(这个时候这个文本框是不允许我们输入时间的)如图: 这个时候,没法调用WebElement的sendKeys(),像这种选择时间的input标签都会
阅读全文
摘要:什么是富文本编辑器? 富文本编辑器,Rich Text Editor, 简称 RTE, 是一种可内嵌于浏览器,所见即所得的文本编辑器。具体长啥样,如下图: 通过自动化操作富文本编辑器 模拟场景:在富文本编辑器中输入:欢迎关注公众号:软件测试君 1、通过键盘事件实现输入 具体代码如下: 2、通过进入i
阅读全文