学习Selenium遇到的问题和解决方案
问题1:IE驱动位数问题,未安装对应的IE,打不开IE浏览器(已解决20180323)
使用Selenium启动IE浏览器的时候,报错,报错信息如下
org.openqa.selenium.remote.SessionNotFoundException: Unexpected error launching Internet Explorer. IELaunchURL() returned HRESULT 80070002 ('系统找不到指定的文件。') for URL 'http://localhost:36608/' (WARNING: The server did not provide any stacktrace information)
单纯看这个报错信息,看不太明白,在网上搜寻答案无果,但是看到了增加打印日志的语句
DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer();
capabilities.setCapability("logLevel", "DEBUG");
driver = new InternetExplorerDriver(capabilities);
问题原因:通过查看DEBUG级别的日志,可以看到错误原因是因为找不到文件所以打不开IE,于是联想到我的IE驱动是32位的,而我只安装了64位的IE,没有装32位的IE浏览器,所以才会打不开。
解决方案:更换为64位的IE驱动,完美解决此问题。
附上驱动下载地址:下载IEDriver
问题2:打开https地址时,IE浏览器弹出提示窗口,导致程序无法继续运行(已解决20180323)
selenium在打开地址"https://www.baidu.com/"时报错
org.openqa.selenium.UnhandledAlertException: Modal dialog present: 是否只查看安全传送的网页内容?
问题原因:https安全协议导致ie浏览器弹窗(Modal dialog),阻止了程序运行
解决方案:1.将https改为http后不再弹出对话窗可以正常运行,但没从根本解决问题
2.可以在弹出窗口之后插入一句代码driver.switchTo().alert().accept(); 对弹出对话框进行处理,程序可以继续运行
问题3:selenium打开chrome时,chromedriver.exe停止运行(已解决20180323)

程序在打开chrome浏览器时报错
org.openqa.selenium.remote.UnreachableBrowserException: Error communicating with the remote browser. It may have died.
问题原因:chromedriver版本和chrome浏览器版本不兼容,详见https://blog.csdn.net/huilan_same/article/details/51896672,列出了兼容的chromedriver和对应的chrome浏览器版本
解决方案:因为我的chrome浏览器是版本是56,更换chromedriver版本为2.28,解决问题
学习Selenium遇到的问题和解决方案的更多相关文章
- 学习selenium需要具备的知识或技术
因为有QTP和JAVA的基础,selenium学起来会快很多,总结下学习selenium所需要具备的知识或技术 1.selenium进行的自动化测试是基于ui层面的,所以html,css,javasc ...
- 学习selenium所须要具备的技术
学习selenium所须要具备的知识或技术 1.selenium进行的自己主动化測试是基于ui层面的,所以html,css,javascript基本上是不可缺少的,至于javascript,有非常多的 ...
- 学习selenium python版最初的一个小想法
这个还是我在刚开始学习selenium的时候做的,自己觉得有点意思,在接下来我会基于目前我对于selenium的一些深入研究,写下我对selenium的理解以及UIAutomation的一些理解,以此 ...
- 如何快速的学习selenium工具
分享即快乐. 最近几年,软件测试工程师一度成为热门职业,作为测试员也是倍感压力.作为测试员来说,仅仅会手工测试让职业生涯陷入瓶颈.于是工作之余充电,学习了自动化测试工具selenium,打算进阶中高级 ...
- 新人学习selenium哪些资源比较有帮助?
为什么学习selenium? selenium现在基本上成了页面自动化测试的标配,具体理由我在selenium 3.0发布这篇文章里已经说明过了.当一个东西成为标准以后,那么它的能量和潜力都是巨大的. ...
- Python学习--Selenium模块
1. Python学习--Selenium模块介绍(1) 2.Python学习--Selenium模块学习(2) 其他: 1. Python学习--打码平台
- Python学习--Selenium模块学习(2)
Selenium的基本操作 获取浏览器驱动寻找方式 1. 通过手动指定浏览器驱动路径2. 通过 `$PATH`环境变量找寻浏览器驱动 可参考Python学习--Selenium模块简单介绍(1) 控制 ...
- 新手学习selenium路线图(老司机亲手绘制)-学前篇
前言: 本来这篇是只在微信公众号(yoyoketang)上发布的,最近一搜,发现本很多人copy(copy公众号的,图片是加载不出来的)了,还没注明出处,不想多说什么,博客上也同步更新这篇吧! 最近群 ...
- 学习Selenium同学必看
本文转载 作者:灰蓝蓝蓝蓝蓝蓝链接:http://www.jianshu.com/p/5188cb3ab790來源:简书著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.更多技术博客 ...
随机推荐
- DFS(深度优先)算法编程实践
DFS定义 DFS(Depth-First-Search)深度优先搜索算法,是搜索算法的一种.是一种在开发爬虫早期使用较多的方法.它的目的是要达到被搜索结构的叶结点 . 特点 每次深度优先搜索的结果必 ...
- 保证service存活
Android开发的过程中,每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,然后在onStart ...
- Android中JNI编程详解
前几天在参加腾讯模拟考的时候,腾讯出了一道关于JNI的题,具体如下: JNI本身是一个非常复杂的知识,但是其实对于腾讯的这道题而言,如果你懂JNI,那么你可能会觉得这道题非常简单,就相当于C语言中的h ...
- UNIX网络编程——带外数据小结
TCP没有真正的带外数据,不过提供紧急模式和紧急指针.一旦发送端进入紧急模式,紧急指针就出现在发送到对端的分节中的TCP首部中.连接的对端收取该指针是在告知接收进程发送端已经进入紧急模式,而且该指针指 ...
- 关于"net::ERR_CONNECTION_ABORTED"和"Firebug 达到了 Post 请求大小限制"的问题
1.其中"net::ERR_CONNECTION_ABORTED"是在Chrome的控制台中打印出来的. 2."Firebug 达到了 Post 请求大小限制" ...
- mysql的left jion:就是left outer join(right join同理)
左外连接: A left jion B on A.id=B.id 就是A表数据不动,将B表里面能和A对应上的数据补充到A表数据后 而右外连接: rignt jion 则是将A补充到B,B不动,保存全部 ...
- Android初级教程理论知识(第四章内容提供器)
之前第三章理论知识写到过数据库.数据库是在程序内部自己访问自己.而内容提供器是访问别的程序数据的,即跨程序共享数据.对访问的数据也无非就是CRUD. 内容提供者 应用的数据库是不允许其他应用访问的 内 ...
- Dynamics CRM EntityCollection 根据实体中的某个字段为依据去除重复数据
CRM中通过QueryExpression查询出了一个EntityCollection集,但有时会存在重复数据,QueryExpression中有个属性distinct,只要设置为true就能过滤 ...
- leetcode 204题求素数个数
Description: Count the number of prime numbers less than a non-negative number, n 提示晒数法: http:// ...
- pyhton exit
exit("0") is normally out, and means "successful termination" exit("1" ...