Selenium自动化测试面试题

Selenium自动化测试面试题
一、目录
1、什么是自动化测试、自动化测试的优势是什么?

2、什么样的项目比较适合做自动化测试,什么样的不适合做自动化测试?

3、说一下开展自动化工作的主要流程是怎样的?

4、在制定自动化测试计划的时候一般要考虑哪些点?

5、编写自动化脚本时的一些规范?

6、你一般一天能编写多少个自动化脚本?

7、做自动化测试时关注的一些指标?

8、自动化测试可以达到100%的覆盖率吗?

9、你们公司开展自动化测试遇到一些什么问题?

10、Selenium驱动浏览器使用的协议是什么?

11、Selenium工具都包含哪些组件?

12、Selenium中定位网页元素的八种方式?

13、webdriver启动常见的浏览器语句?

14、如何选中下拉列表中的下拉选项?

15、如何取消选中下拉列表中的下拉选项?

16、Selenium如何处理弹窗?

17、Selenium可以处理Windows弹窗吗?

18、如何判断一个元素在页面上是显示出来的?

19、Selenium中如何判断元素是否存在?

20、driver.quit()和driver.close()的区别?

21、自动化测试用例从哪里来?

22、常见的自动化测试框架有哪些?

23、什么是POM?

24、Selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的?

25、如何提高Selenium脚本的执行速度?

26、你的自动化用例的执行策略是什么?

27、什么是持续集成?

二、面试题答案
1、什么是自动化测试、自动化测试的优势是什么?
通过工具或脚本代替手工测试执行过程的测试都叫自动化测试。

自动化测试的优势:

1、减少回归测试成本

2、减少兼容性测试成本

3、提高测试反馈速度

4、提高测试覆盖率

5、让测试工程师做更有意义的测试

2、什么样的项目比较适合做自动化测试,什么样的不适合做自动化测试?
1、适合做的项目:

a.项目周期长且相对稳定

b.需要做频繁的冒烟测试

c.需要经常做回归测试

d.需要进行大数据量的数据驱动测试

2、不适合做的项目:

a.项目周期短用例不会多次重复执行

b.被测项目不稳定变化太频繁

3、说一下开展自动化工作的主要流程是怎样的?
1、选择合适的测试工具

2、定义自动化测试覆盖的范围

3、制定测试计划

4、自动化测试环境搭建

5、脚本开发

6、测试执行

7、测试脚本维护

4、在制定自动化测试计划的时候一般要考虑哪些点?
1、选择适合的测试工具或分析当前的工具是否适合新项目

2、选择合适的自动化测试框架

3、确定要做自动化测试的范围和不做自动化测试的范围

4、测试环境的准备与搭建

5、制定一个粗略的脚本开发的时间表

6、制定脚本执行的一些策略,如冒烟测试的频率,回归测试的时间点及频率等

7、定义自动化测试的输出,比如脚本,测试数据,发现的缺陷,测试报告等

5、编写自动化脚本时的一些规范?
1、统一的命名约定,如用例名,方法名等

2、良好的脚本注释

3、遵循代码规范,使用适当的缩进

4、对异常进行处理

6、你一般一天能编写多少个自动化脚本?
这个取决于测试用例场景的复杂度,一般一天能写2~5个左右,复杂的话一天只能写一个

7、做自动化测试时关注的一些指标?
1、自动化测试用例的覆盖率=自动化测试用例数/所用用例总数,这个比例越高测试反馈越快,成本节约越多

2、节省的时间成本=手工测试所花的时间-自动化测试所花的时间

3、自动化测试的投入=开发脚本的投入+脚本维护的投入+工具价格

4、自动化测试发现的缺陷数,每次回归测试时自动化测试发现的缺陷数及漏测数,反应了自动化用例的有效性

5、自动化测试投入产出比

ROI=(手工测试的成本-自动化测试成本)/自动化测试成本

ROI如果是负值说明自动化测试的成本未收回,ROI为正值说明自动化测试成本已回收,且值越大说明回报越好

8、自动化测试可以达到100%的覆盖率吗?
比较难,因为有些用例场景无法被自动化,一些验证易用性友好性的用例不适合做自动化,有些边缘的用例很少被重复执行,从投入产出比来说也不适合做自动化

9、你们公司开展自动化测试遇到一些什么问题?
1、项目流程不规范,项目变动频繁导致自动化用例维护成本高,解决:深入理解用户需求,规范开发流程,自动化用例先覆盖已经稳定的功能

2、对自动化期望太高,自动化也是一个逐步完善的过程,不可能一下子完全代替手工

3、有些自动化工程师的技术能力偏弱,提升编程能力,提升自动化工具使用能力,对新人进行培训等

10、Selenium驱动浏览器使用的协议是什么?
JsonWireProtocol 是通过使用 webdriver 与 remote server 进行通信的 web service 协议。通过 http 请求,完成和 remote server 的交互。

现在还想从事软件测试行业的小伙伴们,想要心仪的工作,要多努力学习哟。我给大家整理了2022最新软件测试八股文,大家刷起来哟

1.软件测试基础题(250题)

 

 2.Linux(55题)

 

 3.MySQL(80题)

 

 4.web测试(10题)

 

 5.接口测试(36题)

 

 6.APP测试(12题)

 

 7.Python(100题

 

 8.Selenium(40题)

 

 9.LordRunner相关(80题)

 

 10.计算机网络(26题)

 

 11.人力资源(55题) 

 

 面试总失利是有原因的,上次踩过的坑下次可千万别踩中啦,备战面试第一步:刷题刷题再刷题!

求职高峰期,大家都不要焦虑,最后祝福所有求职者都能入职心仪的公司

现在我邀请你进入我们的软件测试学习交流群:914172719,备注“入群”可自取这份文档, 大家也可以一起探讨交流,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路。

 

热门相关:帝少的专属:小甜心,太缠人   夫人你马甲又掉了   最强装逼打脸系统   最强装逼打脸系统   学霸女神超给力