当前位置:   article > 正文

2023面试自动化测试面试题【含答案】,建议收藏_测试自动化面试问题及答案

测试自动化面试问题及答案

1、你做了几年的测试、自动化测试,说一下 selenium 的原理是什么?
我做了五年的测试,1年的自动化测试;

selenium 它是用 http 协议来连接 webdriver ,客户端可以使用 Java 或者 Python 各种编程语言来实现;

2、什么项目适合做自动化测试?
关键字:不变的、重复的、规范的

第一点,需求变化不能太频繁;

第二点,项目周期要足够长,如果自动化代码还没有写完,公司就倒闭了,那也不需要自动化了

第三点,脚本可以重复使用:在一些典型的场景,比如说 “冒烟测试、回归测试” 的地方就是经常使用自动化测试;

第四点,被测试的软件是否规范:比如说是不是有需求文档、规范的接口文档、是否有原型图、你的接口设计是不是比较规范;

第五点,手工测试是无法完成的;比如说一个性能测试,不能同时有 一千只手一直做好点点点,自动化测试的成本不是特别高

3、Python 生成器 和迭代器的区别?
作为迭代器必须实现两个特定的方法 “iter(),next()” ;

生成器是一种特许的迭代器,支持所有的迭代操作,除此之外生成器还实现了,普通迭代器没有的一些特性;

比如说它可以通过 send 的方法与生成器内部进行数据交互;还有它可以通过 close 方法去进行关闭;甚至还可以通过 throw 方法,引发内部的异常;

4、为什么用 Mac 写代码?
表面原因是 Mac 方便易用,颜值也高;深层原因是因为现在的服务器,大多都是采用 Linux 系统,而 Mac 系统 和 Linux 系统其实都是基于原来的 Unix 系统开发的;

而 Mac 基本上能够维持我们的开发环境和线上的一致性;

为什么不用 Linux ?

用 Linux 写代码也是一个很好的选择,但是 Linux 的界面操作和他的娱乐功能不是特别强,而 Mac 做到了很好的平衡;

5、你是怎么开展自动化测试工作的?
第一,根据产品的业务特性整理出来,可以做自动化的一个功能模板;

第二,我们会根据有限级以及人员现状,来制定自动化测试计划;

第三,我们会从功能用例当中挑选合适的用例来转成自动化用例;

第四,是框架选型,选择编制语言或者工具来实现,我们的团队都是会代码的能力还不错,所以我们选择的是 Python 语言来实现的;

第五,就是自动化测试的脚本开发;

第六,根据项目来制定自动化的执行方案;

第七,就是测试报告的分析工作,以及 自动化测试成果的汇报,跟进后期的维护;

6、请说下什么是闭包函数?
完成的闭包必须包含以下三个特性:函数中必须嵌套一个函数;外层函数返回值是内层函数的函数名;内存嵌套函数对外层作用率,有非全局变量的引用;

简单来说闭包函数,第二个返回的不仅仅是一个简单的函数,这个函数它还呆了一个封闭的作用域;

7、请介绍一下你的自动化测试框架?
在上家公司搭建了 API 接口自动化测试框架,使用 Python 中的 unittest 框架结合 requests 模块,采用数据驱动思想(ddt)和分层设计理念,实现测试用例自动化执行;

我的框架主要分为一下几大模块:

模块一:cases(K色死)文件夹,自己根据接口需求封装的模块(注册,登录,充值),保存测试用例的类

模块二:configs(康菲格斯)文件夹,配置文件,存放项目当中共有配置:文件名、日志器,数据库,url地址

模块三:datas(得塔斯):保存测试用例 Excel 文档数据;

往往一条测试用例的自动化代码都是一样的,只不过只是数据不同而已,会将数据和代码分离,使用 ddt 进行驱动,这分离就是数据驱动思想;

会将一条测试用例的数据放到 Excel 、数据库中,一条数据代表一条用例,这样可以精简代码,方便维护

模块四:libs(来波斯)文件夹,第三方库文件夹、ddt 和 HTML 报告;

ddt:修改 ddt 库,如果数据是字典,则获取字典当中的 title 对应的值,加到测试用例名称中;HTML 报告,使用更加美化详细的报告

模块五:logs(老格斯)文件夹,存放日志文件;

模块六:reports(瑞跑次)文件夹,存放生成的报告

模块七:scripts(思怪珀斯)文件夹,存放封装的类和模块,封装了通用的工具模块

constants :(康斯ten死)py文件是存储目录路径文件;使用 os 库,存放定位的文件目录 import os

handle_config.py:(憨豆个.康飞个)文件封装了对配置文件的读写操作;

from configparser import ConfigParser 使用 (康飞个.拍儿涩)方法,进行配置文件的读写

handle_context.py:(憨豆.康 泰可斯特)py文件是参数化的封装;

使用 re 模块,正则来实现参数化 search (译:涩吃)方法搜索、sub(译:萨博)方法替换操作

handle_excel.py:(憨豆.一颗赛欧)py 文件是 对Excel 文件的封装;

使用 openpyxl 模块,来处理 excel 文件对,文件进行读写操作, 存储测试数据(用例数据)用例数据);包括:获取所有测试用例、对执行结果在指定行进行写入

第一步. 打开excel文件:使用load_workbook(

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/809212
推荐阅读
相关标签
  

闽ICP备14008679号