javaselenium遇到的问题和解决方法(还没试,遇到问题可以先看这里)
Firefox路径问题
firefox火狐浏览器去完成自动化测试时,代码报了如下错误:
Cannot find firefox binary in PATH. mark sure firefox is installed
错误原因:
firefox安装在其它路径,不是默认的安装路径
解决办法:
指定firefox可执行文件路径:webdriver.firefox.bin
代码设置:

selenium 3.x Friefox驱动问题
使用selenium3.x+firefox火狐浏览器去完成自动化测试时,代码报了如下错误:
The path to the driver executable must be set by the webdriver.gecko.driver system properity
错误原因:
缺少火狐浏览器驱动包。如果selenium版本是3.x的,需要使用驱动包
解决办法:
往项目中添加火狐驱动包,并加载驱动的配置。
至于该驱动版本适配的浏览器和selenium版本在驱动的change log里有说明(如:使用selenium 3.5.1+firefox 56)
代码设置:

selenium与驱动版本匹配问题
使用selenium2.x版本+firefox去完成自动化测试时,代码报了如下错误:
Unable to connect to host 127.0.0.1 on port 7055 after 45000ms
错误总结:
firefox浏览器版本和selenium版本不适配。
解决办法:
建议降级火狐版本到47以下(比如:selenium 2.53.0+firefox 46)
selenium fox firefox说明
selenium 2.x
selenium 2.x中自动集成了firefox驱动。
因此只须selenium 版本与firefox浏览器版本对应即可
selenium 3.x
selenium,geckodriver,firefox 对应版本说明:

◆ 从selenium 3.0.0开始就要求firefox为48及以上版本
◆ selenium 3.x使用的java版本为jdk 1.8
◆ selenium 3.x使用geckodriver作为firefox浏览器的驱动的替代
Firefox自动化相关工具链接
Changelog
https://raw.githubusercontent.com/SeleniumHQ/selenium/master/java/CHANGELOG
Firefox驱动
https://github.com/mozilla/geckodriver/releases/
Firefox各版本
http://ftp.mozilla.org/pub/firefox/releases/
Firefox驱动 镜像
https://npm.taobao.org/mirrors/geckodriver/
IE浏览器驱动问题
使用IE浏览器去完成自动化测试时,代码报了如下错误:
The path to the driver executable must be set by the webdriver.ie.driver system property
错误总结:
缺少IE浏览器驱动包
解决办法:
往项目中添加IE驱动包,并加载驱动的配置。
System.setProperty("webdriver.ie.driver", "src/test/resources/IEDriverServer.exe");
下载地址 http://www.seleniumhq.org/download/
建议下载版本:3.7.0
http://selenium-release.storage.googleapis.com/index.html?path=3.7/
IE驱动版本与Selenium版本保持相同即可
http://selenium-release.storage.googleapis.com/index.html
IE浏览器保护模式问题
使用IE浏览器去完成自动化测试时,代码报了如下错误:
Protected Mode Settings are not the same for all zones
解决方法1:
浏览器设置(但是换一台电脑就不适用了) 打开IE浏览器->工具->安全->全部勾选启用保护模式
解决方法2:
忽略浏览器保护模式的设置
InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS
代码:

IE浏览器缩放设置
使用IE浏览器去完成自动化测试时,代码报了如下错误:
Browser zoom level was set to 125%.It should be set to 100%
错误总结:
浏览器缩放级别设置不对导致的(点工具栏页面->缩放设置)
解决办法:
忽略此设置:
InternetExplorerDriver.IGNORE_ZOOM_SETTING
代码:

IE浏览器window丢失问题
使用IE浏览器去完成自动化测试时,代码报了如下错误:
unable to find element with id -- kw
错误总结:
不是因为没有设置等待时间,而是因为之前的window对象已经丢失
解决办法:
最快的解决办法是直接指定一个初始化页面
InternetExplorerDriver.INITIAL_BROWSER_URL
代码:

Chrome
chrome浏览器驱动路径
使用Chrome做测试时,报了如下错误:
The path to the driver executable must be set by the webdirver.chrome.driver system properity
解决方案:
系统设置Chrome驱动文件的路径

chrome浏览器与chromeDriver匹配
使用chrome浏览器去完成自动化测试时,chrome浏览器停止运行
chromedriver.exe 已停止工作
错误总结:
chrome浏览器版本过高,虽然根据官网上的信息,2.33的chrome驱动支持60-62的谷歌。
但是60根本不行。
解决办法:
降级chrome
chrome与chromeDriver版本对照表

chrome浏览器各版本
http://www.chromedownloads.net/chrome64win/
禁止谷歌浏览器更新
https://jingyan.baidu.com/article/76a7e409f2137afc3b6e15be.html
ChromeDriver 镜像
http://npm.taobao.org/mirrors/chromedriver
Selenium 镜像
http://npm.taobao.org/mirrors/selenium
JDK版本问题
使用3.x的selenium来完成自动化测试时,代码报了如下错误:
Exception in thread "main" java.lang.UnsupportedClassVersionError:
错误总结:
3.x的selenium需要1.8的jdk,可能jdk版本过低
解决办法:
降级selenium版本,或提高jdk的版本为1.8
来源: https://mp.weixin.qq.com/s/BKcHSuEtfn9zlD9MI8zdkQ
javaselenium遇到的问题和解决方法(还没试,遇到问题可以先看这里)的更多相关文章
- 切换了webview 定位不了的解决方法 (还没有试,记录在此)
# 切换到 webview time.sleep(2) print(driver.contexts) driver.switch_to.context('WEBVIEW_com.tencent.mm: ...
- python读写csv文件的方法(还没试,先记录一下)
该csv模块定义了以下功能: csv.reader(csvfile,dialect ='excel',** fmtparams ) 返回一个reader对象,它将迭代给定csvfile中的行. csv ...
- 解决Jmeter跨线程组取参数值难题!(还没试)
来源 https://mp.weixin.qq.com/s/q7ArxwnX1sOfa9tfHouSBQ 如果你工作中已经在用jmeter做接口测试,或性能测试了,你可能会遇到一个麻烦. 那就是j ...
- Longest Palindromic Substring (最长回文字符串)——两种方法还没看,仍需认真看看
Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...
- csrf攻击 使用js 调用 php文件的方法(还没实践)
https://www.cnblogs.com/Im-Victor/p/9306535.html
- jmeter 调用python的方法三种 (还没试)
参考文章1: Jmeter 运行 Python 代码进行 AK/SK 认证 (使用 OS Process Sampler) 思路是:jmeter调用shell,用shell执行py 参考文章2: Jm ...
- Web自动化遇到shadowDOM节点操作(还没试)
近期有同学在做web自动化的时候,发现页面上有些元素,在selenium中无法通过xpath来定位,各种原因找了半天,都没找到解决方案. 最后发现元素在一个叫做shadow-root的节点下面. 如下 ...
- Locust-参数化批量注册(还没试,目测试可以的)
前言 实现场景:所有并发虚拟用户共享同一份测试数据,并且保证虚拟用户使用的数据不重复.例如,模拟10用户并发注册账号,总共有100个手机号,要求注册账号不重复,注册完毕后结束测试 准备数据 虚拟用户 ...
- appium+python自动化42-微信公众号 (可能以后会遇到也遇到切换不了webview的问题 记录再此 还没试)
前言 本篇介绍如何在微信公众号上自动化测试,以操作我的个人公众号:yoyoketang为例,没关注的,先微信关注了,再跟着操作 环境准备:python 3.6appium 1.7以上版本微信6.6.6 ...
随机推荐
- CDH6.2离线安装(整理版)
1.概述 CDH,全称Cloudera's Distribution, including Apache Hadoop.是Hadoop众多分支中对应中的一种,由Cloudera维护,基于稳定版本的Ap ...
- JS基础篇之作用域、执行上下文、this、闭包
前言:JS 的作用域.执行上下文.this.闭包是老生常谈的话题,也是新手比较懵懂的知识点.当然即便你作为老手,也未必真的能理解透彻这些概念. 一.作用域和执行上下文 作用域: js中的作用域是词法作 ...
- mysql跨表删除多条记录
Mysql可以在一个sql语句中同时删除多表记录,也可以根据多个表之间的关系来删除某一个表中的记录. 假定我们有两张表:Product表和ProductPrice表.前者存在Product的基本信息, ...
- 转载 C# 开源框架(整理)
C# 开源框架(整理)http://www.cnblogs.com/gaoyuchuanIT/articles/5612268.html Json.NET http://json.codeplex.c ...
- Distributed PostgreSQL on a Google Spanner Architecture – Storage Layer
转自:https://blog.yugabyte.com/distributed-postgresql-on-a-google-spanner-architecture-storage-layer/ ...
- C# 异常 抛异常的时候 同时抛出 传入的参数
abp的审计日志都把这些功能实现了 可以借鉴 抛异常的时候 同时抛出 传入的参数 大致这样实现,aop,方法执行先,先把参数写入到栈中,抛异常时,栈中自然就有此时的参数了. 可用于重现该异常. 获取把 ...
- Linux下安装Phalcon系统环境安装Phalcon 及 安装Phalcon Developer Tools
一.安装Phalcon Phalcon 需要用的的PHP扩展函数有如下: curl gettext gd2 (to use the Phalcon\Image\Adapter\Gd class) li ...
- 洛谷 P1823 [COI2007] Patrik 音乐会的等待 题解
P1823 [COI2007] Patrik 音乐会的等待 题目描述 N个人正在排队进入一个音乐会.人们等得很无聊,于是他们开始转来转去,想在队伍里寻找自己的熟人.队列中任意两个人A和B,如果他们是相 ...
- svg坐标转换
本文内容转自 how-to-translate-from-dom-to-svg-coordinates-and-back-again svg coordinate system Why we need ...
- 判断qq浏览器和uc浏览器?
判断在iphone手机上打开的是uc浏览器还是qq浏览器 <html lang="en"> <head> <meta charset="ut ...
