首页 > 编程语言 > 详细

python+selenium面试题

时间:2019-06-09 17:15:40      阅读:177      评论:0      收藏:0      [点我收藏+]

一、selenium中如何判断元素是否存在
  
expected_conditions模块提供了多种校验方式,我常用的一种是presence_of_element_located(判断某个元素是否被加到了dom树里,
并不代表该元素一定可见,如果定位到就返回WebElement)

二、selenium中hidden或者是display = none的元素是否可以定位到?
  可以定位到,但是不能操作,为了显示我们会的更多,我们可以说通过is_displayed()方法来判断显示或不显示,如果想点击的话,可以用js
去掉dispalay=none的属性。

三、selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的?
  通过wait模块中的WebDriverWait类提供的until或until_not方法与expected_conditions结合使用,进行二次封装。

四、如何提高selenium脚本的执行速度?
  1.少用sleep,尽量不用implicitly_wait
  2.多用显式等待方法

五、用例在运行过程中经常会出现不稳定的情况,也就是说这次可以通过,下次就没办法通过了,如何去提升用例的稳定性?
  通过wait模块中的WebDriverWait类提供的until或until_not方法与expected_conditions结合使用,进行二次封装。

六、自动化测试的时候是不是需要连接数据库做数据校验?
  UI自动化不需要、接口测试会需要

七、id,name,class,xpath, css selector这些属性,你最偏爱哪一种,为什么?
  我喜欢用css selector  css语法简洁,定位快(xpath语法长,定位慢,还不稳定)

八、如何去定位页面上动态加载的元素?
  通过wait模块中的WebDriverWait类提供的until循环的去判断是否出现了要用的元素

九、如何去定位属性动态变化的元素?
  先去找该元素不变的属性,要是都变,那就找不变的父元素,用层级定位

十、怎样去选择一个下拉框中的value=xx的option?
  1、通过两次click可以做到
  2、通过执行js脚本做到(前提是你能写出js代码)
  3、selenium提供了select模块,我们可以通过select模块中的方法定位,比如 index_of、value、text
  4、还可以通过xpath定位,但是有时会出错误

十一、UI自动化最大的缺陷是什么?
  
需求变动大的时候,维护成本大

十二、webdriver可以用来做接口测试吗?
  
不可以、webdriver是专门做webUI自动化的。

python+selenium面试题

原文:https://www.cnblogs.com/yttbk/p/10993844.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!