1、selenium中如何判断元素是否存在?
isElementPresent
2、selenium中hidden或者是display = none的元素是否可以定位到?
不能
3、selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的?
添加元素智能等待时间 driver.implicitly_wait(30)
try 方式进行 id,name,clas,x path, css selector 不同方式进行定位,如果第一种失败可以自动尝试第二种
4、如何提高selenium脚本的执行速度?
代码优化
5、用例在运行过程中经常会出现不稳定的情况,也就是说这次可以通过,下次就没办法通过了,如何去提升用例的稳定性?
time.sleep( ) driver.implicitly_wait(30)
多用 try 捕捉,处理异常
6、什么是持续集成?
可以参考 93、持续集成以及Jenkins的知识介绍
7、自动化测试的时候是不是需要连接数据库做数据校验?
UI自动化不需要
接口测试会需要
8、id,name,class,xpath, css selector这些属性,你最偏爱哪一种,为什么?
css 、xpath 几乎所有的元素都可以定位到
9、如何去定位页面上动态加载的元素?
触发动态加载元素的事件,直至动态元素出现,进行定位
10、如何去定位属性动态变化的元素?
xpath或者css通过同级、父级、子级进行定位
11、点击链接以后,selenium是否会自动等待该页面加载完毕?
会的
12、webdriver client的原理是什么?
[Webdriver实现原理](http://www.cnblogs.com/timsheng/archive/2012/06/12/2546957.html)
13、webdriver的协议是什么?
The WebDriver Wire Protocol
14、启动浏览器的时候用到的是哪个webdriver协议?
http
15、怎样去选择一个下拉框中的value=xx的option?
二次定位
16、如何在定位元素后高亮元素(以调试为目的)?
重置元素属性,给定位的元素加背景、边框
17、什么是断言?
断言的英文是assertion,断言检查的英文是assertion checking。
断言是指定一个程序必须已经存在的状态的一个逻辑表达式,或者一组程序变量在程序执行期间的某个点上必须满足的条件。
18、如果你进行自动化测试方案的选型,你会选择哪种语言,java,js,python还是ruby?
使用自己熟悉的语言
19、page object设置模式中,是否需要在page里定位的方法中加上断言?
不需要
20、page object设计模式中,如何实现页面的跳转?
get、click (可能有坑)
21、自动化测试用例从哪里来?
手工用例中抽取
可以参考自动化用例的执行策略
22、你觉得自动化测试最大的缺陷是什么?
不稳定
可靠性
不易维护
成本与收益
23、webdriver可以用来做接口测试吗?
有难度,不推荐
作者:Ray
原文链接:https://www.cnblogs.com/tsbc/p/4922368.html