自动化测试面试题
1.case数量
# case数量是根据接口数来确定的,一般一个接口20-30个case,
# 一般如果有100 个接口,接口自动化的case 数量大概在2000-3000个左右
2.覆盖率
# 接口自动化的覆盖率可以达到100% # web自动化的覆盖率取决于业务用例数量而定的,例如:10000个功能测试的用例,web自动化的测试用例覆盖率占比30%,约2000-3000个,
3.执行时长
# 一般执行时长为:30-60分钟,超过一小时,则需要优化
4.接口自动化测试怎么做,web自动化测试怎么做,流程是怎样的?
#1.项目组做自动化的可行性分析,是否可以做?如果做自动化测试,自动化率能实施到什么样的程度? #2.调研测试团队对自动化技术得程度,一般会伴随demo演示(selenium,rf, request) #3.计划制定后,搭建自动化测试框架,逐步实施,发现框架的问题,再进行改善。 #4.计划制定后,提取或者编写自动化测试用例,由leader编写自动化测试框架,组员编写和调试自动化测试脚本,无人值守Jenkins,脚本的维护。 #5.把自动化流程,框架,出具使用文档和规范文档 #6.持续不断的完善框架 #7.把自动化测试标准推广到其他的项目。
5.什么是pom模式,为什么要使用它?
#pom模式:全程为page object model ,简称po,页面对象模型,意思是把一个页面当成一个对象,页面的元素,就是对象的属性,页面的操作就是对象的行为,方法 #一般情况下,po分为三层架构:基础封装层的basepage, po页面对象层,testcase测试用例层 #pom的优点:使测试用例更简单,更清晰,把很多业务封装到po页面对象层,用例只需要调用即可,如果页面有对象变动,只需要修改po页面对象层的属性即可,增加代码的可维护性。
6.对数据驱动和关键字驱动的理解?
#数据驱动:是从数据文件【excel, csv, yaml, 数据库】读取输入,输出的数据, 然后通过变量传入自动化测试用例中, 数据的读取,测试状态,测试信息全部在测试用例中,测试数据都是数据文件中,通过修改数据达到驱动自动化测试用例执行的方式,叫数据驱动。 #关键字驱动:是从面向对象的思维出发,同样的业务逻辑会封装到一个函数,这个函数就叫关键词,不同的关键字实现不同的业务逻辑,当所有的业务逻辑,都可以通过调用关键字来实现的时候,就是关键字驱动框架。 #一般情况,企业都是,数据库驱动+关键字驱动,一起使用
7.web自动化测试用例如何设计,如何提高web自动化用例脚本的稳定性?
#用例设计:自动化用例是从用例里面提取出来的,主要提取的是冒烟用例和回归测试的用例,提取需要遵循以下原则: 1.优先覆盖核心功能的用例,核心流程用例。 2.尽量不要选用复杂的用例 3.选取一些重复执行的用例 4.一般选取正向用例 #如何提高稳定性 1.尽量使用相对路径的元素。 2.定位元素需要封装显示等待。 3.用例和用例之间尽量避免依赖。 4.加入用例失败重跑机制 5.自动化测试的环境区分开其他环境。
8.举例说明在自动化测试过程中碰到过的异常,用到了哪些python库?
9.自动化测试过程中,遇到了哪些问题,是如何解决的?
10.在上一家公司做自动化测试,用的什么框架?
11.自动化中有哪三类等待,他们有什么特点?
12.在脚本执行过程中,如何实现当前元素高亮显示?
13.在现有基础上给你一个新的业务线,你如何做接口自动化?
14.接口自动化测试框架中,接口关联怎么处理?
15.request中的session会话管理的作用是什么?
16.接口自动化测试中断言是如何实现的?
17.接口自动化测试框架中动态参数接口,加密接口,签名接口,是怎么处理的?