当前位置:   article > 正文

20道经典自动化测试面试题【建议收藏】(2)

20道经典自动化测试面试题【建议收藏】(2)

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

概述

觉得自动化测试很难?

是的,它确实不简单。但是学会它,工资高啊!

担心面试的时候被问到自动化测试?

嗯,你担心的没错!确实会被经常问到!

现在应聘软件测试工程师的岗位,几乎所有的公司都要求会自动化测试!那么,在面试的时候哪些问题会被面试官经常问到?哪些问题是面试官真正关心的?

下面通过20道经典自动化测试面试题。让你能够在面试的时候轻松应对,也让你在学习自动化测试的时候明白应该关注哪些内容,而不仅仅只是会调用接口模拟输入和点击操作!

基础题

1、web自动化时,定位元素的方式有哪些?

答:web自动化有8种元素定位方式。与name有关的有3种:name、class_name、tag_name与link相关的有两种:link_text、partitial_link_text。还有一种是用id来定位。剩下两种是xpath和css定位,它们用元素路径来定位的。

如果元素存在id属性,我一定使用id,因为简单方便,定位最快。其次是Xpath和css,因为很多情况下html标签没有id属性。

2、如何去定位属性动态变化的元素?

答:先去找该元素不变的属性,要是都变,那就找不变的父元素,用层级定位(以不变应万变)

3、启动浏览器的时候用到的是哪个webdriver协议?

答:http协议

4、XPath中使用单斜杠和双斜杠有什么区别?

答:单斜杠表示用绝对路径定位,双斜杠表示用相对路径定位。绝对路径就是从html根目录开始表示的元素路径。相对路径就是选择一个元素作为参考点,相对这个参考点元素开始表示的元素路径。

5、Selenium中有哪些验证点?

答:Selenium主要有3种验证点

① 检查页面标题

② 检查某些文字

③ 检查某些元素(文本框,下拉菜单,表等)

6、如何清除中文本框的内容?

答:使用clear()方法

driver.find_element().clear()

7、如何模拟浏览器的前后移动?

答:

driver.back() # 后退

driver.forward() # 前进

8、find_element()和find_elements()方法有什么区别

答:两个都是查找元素的方式

findelement()查找一个页面元素,只会返回WebElement对象

findelements()查找页面是所有符合匹配的元素,返回元素集合

9、如何判断case是否通过?

答:使用断言,与预期结果比较

10、等待元素加载的方式有几种?

答:有3种,强制等待、隐式等待、显式等待

进阶题

1、定位不到元素怎么办?

答:

① 检查日志,确认当前页面有没有这个元素

② 如果有,检查定位方式有没有写错

③ 如果还没解决,检查元素是否在内联框里 如果在内联框里,需要先切换到内联框里再定位元素。操作完元素记得退出内联框

2、如果遇到验证码,需要这么处理?

答:① 让开发取消测试环境的验证码

② 让开发设置万能验证码(使用复杂的其他人无法猜到的验证码)

③ 如果是图像验证码,可以使用图像识别技术(难度大,准确率不高)

④ 先手动输入登录系统,保留登录成功的cookie。通过cookie绕过验证码

⑤ 让开发给验证码的数据库权限,从数据库中获取

3、遇到弹窗无法导致无法继续下一步操作怎么办?

答:

① 如果是JavaScript弹框,先通过switch_to.alert定位到JS弹框,再调用accept、dismiss等方法处理JS弹框

② 如果是系统某个操作步骤的提示框,可以点击关闭按钮,或者按提示操作即可

4、怎么切换浏览器窗口?

答:可以通过window_handles方法获取所有窗口的句柄。然后遍历句柄,使用switch_to.window()方法切换窗口,通过窗口title判断是否是目标窗口

例如,

handels = driver.window_handles
for handle in handles:
    driver.switch_to.window(handle)
if driver.title=="千锋教育":
# 如果是目标窗口,退出循环
        break

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

5、怎么实现拖拽元素的操作?

答:ActionChains类提供了模拟鼠标操作,如双击,右击,拖拽,悬停等操作

# 先导入 ActionChains类,并创建对象


![img](https://img-blog.csdnimg.cn/img_convert/c91c9f375baa1fd31901625151aa0cc5.png)
![img](https://img-blog.csdnimg.cn/img_convert/89e25f435284153eb0226cdd450f1180.png)
![img](https://img-blog.csdnimg.cn/img_convert/5e30d7baaf01f4cbfe6c8b9a2110030f.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618631832)**

38817)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618631832)**

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/754226
推荐阅读
相关标签
  

闽ICP备14008679号