软件测试面试题——接口自动化测试怎么做?

面试过程中,也问了该问题,以下是自己的回答:

接口自动化测试,之前做过,第一个版本是用jmeter 做的,1 主要是将P0级别的功能接口梳理出来,根据业务流抓包获取相关接口,并在jmeter中跑通,2 是整理了项目上的所有接口,先将单个接口跑通,然后再编写不同的接口用例,如入参、必填项、状态值不同,考虑异常情况、接口安全等,整理的一套接口脚本。随着项目不断的迭代,基本功能稳定,每次新加功能或者是修改已有功能,只需要将已有的接口跑一遍,速度很快。但是呢,也不应该止步不前,第二阶段接着用Python 代码去实践一波,当时使用的是unittest 框架,做了一些基础的 封装工作,如维护全局的token、封装http的get 和post 请求、使用了assert断言,添加了日志和报告,完成了1.0版本的代码,代码能跑起来,但是还有值得改进的地方。(向pytest 过度,如参数化、标记冒烟测试的用例、测试用例分类执行、顺序执行、失败重跑、跳过、丰富的第三方插件等)目前对pytest学习中。

回答完看了面试官的反应,感觉还行,面试官就追着问了几个问题:

  1. python 常用的库有哪些?

os、request、pymyql、time、xlrd、xlwt、math、random、logging等等

  1. jmeter做接口自动化 与Python 做 接口自动化有什么区别? 是什么原因让你想去拿代码实现的呢?

jmeter 偏向于代码弱的同学或者 是无代码基础的同学,上手快,适合迭代频率高、时间少的项目

如果有充足的测试时间 和写代码的时间,那就可以试试拿python,主要还是看团队成员的水平及项目情况。

选择适合自己项目的才是最重要的。

3.是否能落地(问了好几次)

能落地,但是还有改进空间,离那种大型项目框架的代码还是有些许的距离的,我会继续实践并向其靠拢。

面试结束后,我去bili上搜索了一下该问题,以下是别人的答案,积累经验吧。

接口自动化测试怎么做?

1.项目组做自动化的可行性分析,自动化率能够实施什么样的程度

2.调研测试团队对于自动化技术的程度,一般会伴随着demo演示

3.计划指定,自动化测试框架搭建,逐步实施。发现框架的问题进行改善

指定计划,提取或编写自动化测试用例,由leader 编写自动化测试框架,组员编写和调试自动化测试脚本,无人值守的jenkins,脚本的维护

4.把自动化流程化,框架出使用文档和规范文档

5.持续不断的完善框架

  1. 把自动化测试标准推广到其他的项目。

面试过程中,还是需要随机应变,仔细听面试官问问题的重点,TA想知道流程还是细节,具体场景具体分析。

相关推荐
indexsunny13 小时前
互联网大厂Java面试实战:微服务、Spring Boot与Kafka在电商场景中的应用
java·spring boot·微服务·面试·kafka·电商
AlenTech13 小时前
198. 打家劫舍 - 力扣(LeetCode)
算法·leetcode·职场和发展
重生之后端学习13 小时前
21. 合并两个有序链表
java·算法·leetcode·链表·职场和发展
源代码•宸13 小时前
Leetcode—1266. 访问所有点的最小时间【简单】
开发语言·后端·算法·leetcode·职场和发展·golang
YuTaoShao14 小时前
【LeetCode 每日一题】712. 两个字符串的最小ASCII删除和——(解法一)记忆化搜索
算法·leetcode·职场和发展
自燃人~14 小时前
实战都通用的 Watchdog 原理说明
redis·面试
boooooooom14 小时前
手写高质量深拷贝:攻克循环引用、Symbol、WeakMap等核心难点
javascript·面试
小鸡脚来咯15 小时前
Linux 服务器问题排查指南(面试标准回答)
linux·服务器·面试
源代码•宸15 小时前
Leetcode—85. 最大矩形【困难】
经验分享·算法·leetcode·职场和发展·golang·单调栈
C雨后彩虹16 小时前
synchronized高频考点模拟面试过程
java·面试·多线程·并发·lock