Hello,你们的好朋友九九又又又来了!今天猜猜我给大家带来点啥干货呢?最近很多小伙伴出去面试的时候经常会被问到跟自动化测试相关的面试题。所以,今天九九特意给大家整理了一些经常被公司问到的自动化测试相关的面试题。停,咱先收藏起来好吗,别到时候找不到了,再问九九要,我可就要装作不认识你了哈。
好了,咱废话不多说,直接上干货吧。
第一个最常被问到的问题:你最熟悉的元素定位方式有哪些?
1、id定位方式
2、name定位方式
3、class定位方式
4、tag定位方式
5、Link_text定位方式
6、partial_link_text定位方式
7、css定位方式
8、xpath定位方式
这8种定位方式中,一般CSS和xpath的定位方式会更加全能。
二、如果一个元素无法定位,你一般会考虑哪些因素呢?
这个在我们实际自动化测试过程中也会经常遇到,那一般可以从以下几个方面去考虑:
1、元素定位的方式有误,可以检查元素定位的方法是否正确
2、页面元素加载过慢,需要添加等待时间
3、页面中有框架面,需要先切换到正确的frame框架再进行定位
三、说一说你知道的自动化测试框架
1、RobotFramework
2、Pytest
3、Unittest
4、PyUnit
四、自动化测试中有几种等待方式,它们之间有什么区别吗?
1、强制等待
time.sleep(3):这种等待方式,意味着必须要等待3秒才可以执行后续的代码。这种形式不够灵活,有可能页面3秒之内已经加载完了,但是还是需要等待3秒才能进行下一步操作。
2、隐式等待
Imlicitlywait:这种形式的等待会在时间内不断查找元素,找到后就可以停止等待。但是这种形式需要等待整个页面加载完成才能进行下一步操作。
3、显式等待
WebDriverWait:这种形式的等待,是针对某个元素进行等待,这个元素只要加载完成就可以执行后续的代码了。这种形式比较灵活。
五、什么是PO模式,它有哪三层?三者的关系是怎样的?
PO模式是一种自动化测试设计思想,是把一个页面看成一个对象,页面的元素看成对象的属性和行为。PO模式一般有三层:
基础层:封装一些最基础的方法
页面对象层:元素定位,页面操作等
测试用例层:业务逻辑,数据驱动
这三层的关系:
页面对象层继承基础层,测试用例层调用页面对象层
六、自动化测试的流程是什么?
1、编写自动化测试计划
2、设计自动化测试用例
3、开发自动化测试脚本
4、执行自动化测试脚本
5、生成自动化测试报告,并分析测试结果
当然这个是用比较精练的话来概括的,宝宝们可以根据实际的工作情况尽量丰富化地描述出来。
以上六个呢是宝宝们出去面试的时候经常会遇到的自动化测试相关的面试题。当然除了这些,可能还有很多,如果宝宝们对于这个自动化测试面试专题感兴趣的话,记得点赞和在评论区留言,九九看到后会立马安排更新第二期专题。如果各位小可爱对软件测试感兴趣,小编给大家安利一套零基础教程视频,课程全面细致,全程干货不拖沓,废话不多说,链接奉上:https://www.bilibili.com/video/BV14v411B7p5