面试经验,自动化测试面试题汇总(附回答)


前言

1、你有没有做过自动化测试

我在xx项目中实施了web自动化测试,我们项目中搭建自动化测试框架技术:python+selenium+unittest/pytest+ddt+jenkins,然后用的POM分层的模式(面向对象思想),数据驱动使用的是excel+ddt的驱动模式,我在这个自动化测试实施的项目里所负责的那些模块那些测试用例的自动化代码编写

我在xx项目中实施了接口自动测试平台搭建,技术栈:python+django+unittest/pytest+ddt+jenkins

2、请举例说明一下,你在编写自动化脚本过程中碰到了那些异常?

NoSuchElementException 没有如此元素异常
TimeoutException 超时异常
NosuchFrameException 没有如此框架异常

3、你们公司是如何在公司里面实施自动化测试的?

公司目前展开自动化,希望你能够承担自动化的实施过程
公司已经在开展自动化了,想借鉴一下

1)项目组做自动化的可行性分析自动化率到i什么程度

项目周期比较长 一年以上,需求不会频繁变更,自动化脚本能够持续反复的使用

2)自动化工具selenium robotframework调研以及demo演示

3)由leader搭建自动化测试框架,并且在项目中逐步的实施,发现框架的问题并改善

4)把自动化流程化,框架出使用文档以及规范文档

5)生成定制的报告 并继续完善框架

4、接口自动化如何设计测试用例?一个接口你会设计多少个测试用例?(20-30)

考虑:业务逻辑,入参,通过等价类边界值场景法来设计
设计:正例 (两个)请求方式 get/post

反例:
鉴权反例:token,key:为空,错误,过期
参数反例:必须项检查,长度规则,类型规则,日期

错误码覆盖
其他的关注点:分页,图片格式,大小

5、接口自动化测试框架中接口关联你们是怎么处理的?

postman和jmeter如何处理接口关联?
json提取器 正则表达式 cookie提取器

1)通过一个单独的extract.yaml文件来保存所有的关联字段,中间提取的变量这个变量在所有的测试用例之前清空

清空通过
unittest:setup_class
pytest:conftest+fixtrue

2)在测试用例的yaml里面通过一级关键字extract提取 提取支持json提取的正则表达式提取

3)在其他的接口的yaml文件里面通过{{}}提取或者${}的提取

6、你有从零开始独立搭建过自动化接口自动化测试框架?

我在xx项目搭建的接口自动化测试框架所使用的核心技术:
request+pytest+allure+parametrize+jenkins 包装:basepage基础封装,testcase封装

requests二次封装,日志收集模块 yaml配置文件封装

封装的这个项目规则:
YAML格式用例的约定

1)必须包含一级关键字:name request validate
2)在request关键字下必须包括:method,url,data,如data没有的话那么输入默认值{}
3)提取变量使用一级关键字extract。支持json提取和正则提取(.+?)和(.*?)取值使用{}

4)可以使用热加载的方式调用debug_talk.py中debugTalk类里面的方法 通过 调用方法 5 )支持 e q u a l s 、 c o n t a i n s 两种断言 6 )使用 p a r a m e t e r s 做 c s v 文件的数据驱动,通过 {}调用方法 5)支持equals、contains两种断言 6)使用parameters做csv文件的数据驱动,通过 调用方法5)支持equalscontains两种断言6)使用parameterscsv文件的数据驱动,通过csv(appid)这种格式取值

更细:
web:frame怎么处理,下拉框怎么处理,多个页面 ,弹窗操作,鼠标操作(悬停),滚动条,键盘 你怎么处理
接口:接口加密 接口签名

技术决定面试决定薪资

前提:熟练pyhton包括装饰器反射等

1)接口测试理论
2)精通基于工具类的接口测试:postman、jmeter,fiddler、charles
cookie,token session
3)httprunner是目前唯一成熟的基于yaml设计测试用例的接口自动化框架 简历接口测试框架的设计思想
4)unittest/pytest管理用例和报告定制
5)requests二次封装
6)接口自动化测试框架的封装

7、分布式测试架构与用例并发如何实现?

但凡关联到分布式测试架构的体系,一般而言都是基于UI自动化SeleniumGrid是一套特别好用的分布式架构部署服务;

目前主流的分布式测试框架部署是基于主从节点形态来部署。配置一个网关+N个子节点的形态来实现分布式架构;

用例并发推荐使用多线程模式来实现;
Jenkins自带有分布式部署模式 也是基于主从节点来实现;

8、如何实现POM自动化测试架构

如何解决多人团队下的自动化工作的开展:架构

定义测试框架结构:
基类
页面对象类
测试用例
测试数据
配置
功能

最新最全花1W买的Python+Selenium全栈Web自动化测试

下面是我整理的2025年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

人生的路上,挫折与成功并行。不要因一时的低谷而丧失信心,每一次努力的背后,都藏着未来的光辉。相信自己的力量,脚步不停,你会超越过去,迎接属于你的辉煌。

每个付出的瞬间,都是在为未来积累能量。即使前方充满未知与挑战,只要你保持热忱,勇往直前,成功将不再遥不可及。无论何时,都别忘了,你有无限的可能性。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值