还记得之前我的文章《想进BAT?这些面试题助你一臂之力》吗? 时隔2年过去了,关于软件测试的技术发生了不少变化,市场上对QA的要求也有了提高和调整,故我们需要掌握的知识也需要升级。
下面就对这两年,提问比较多的面试问题总一个总结,希望能帮助到大家。
还是跟以前一样,题目是来自网络,我的回答是红色标注。
1.在上家公司的工作时间?对加班的看法?
说实话,现在不加班的公司真是越来越少了。都在修福报。如果实在不接受就直说。不要进公司里再后悔2.介绍一下XXX框架?它的原理(画图)?
通常问的是简历上写的部分,一定要把自己在用的框架搞明白,特别是做过测试开发的,不仅要画出架构图,还应该对为什么要这么
构架有自己的看法
3.使用以上框架如何进行参数的提取,引用?如何断言?如何做到断言内容灵活变更?如何做到参数灵活变更?如何做到异步?如何请求http?
1. 参数的提取和引用,主要考察:
关于测试用例的数据驱动原理(比如ddt的实现原理)。
2. 通用的断言(参数化):
把断言的期望结果和实际结果做封装,一个断言函数接受expected 和actual两个参数,内部判断即可。
3. 异步主要看实现方式,框架支持异步与否。有些框架比如Mocha就可以直接对异步接口进行测试和断言。
4. HTTP的请求无非是使用第三方库, python里的requests,java里的HTTPClient,还有javascript里的axios。
4.使用以上框架如何做到只调用一次登录接口后面所有用例都不需要再登录?
这部分本质就是个鉴权,说到底是个HTTP的状态如何保持有状态这个问题。
对于接口来说,可以看鉴权方式是哪个? 现在比较流行JWT,只要登录一次后取到JWT就好了。然后一般还有个refresh token,可以写个函数,第一次取到JWT后保存下来(可是全局变量,也可存文件),后续调用时如果失败,通过refreshToken重新拿一次JWT,然后再次使用这个新生成的JWT即可。
如果用的cookies,可以在第一次登陆时拿到所有的cookies,然后inject到你当前的session里。
5.完整的接口自动化流程?
6.完整的性能测试流程?
7.性能测试中需要关注什么指标?
8.公司技术栈?
9.黑盒测试有哪些测试方法?分别简单介绍一下这些测试方法。
10.如果在工作中,开发拒绝更改bug该怎么处理?
11.个人的职业规划?
12.软件测试按项目流程来分可以分成几种?
13.个人的缺点?
14.平时会通过哪些途径提升自己?
15.做ui自动化中遇到的问题?
16.介绍一下appium的架构?atx的架构?
17.Chrome与ChromeDriver.exe的区别?
18.介绍一下selenium的原理?
19.测试用例包括什么要素?
20.公司项目迭代的流程?
21.数据库索引的作用?
22.表中的数据如何保持唯一性?
23.介绍一下数据库事务?
24.如何防止程序并发时,数据库数据出错?
25.什么是orm?
26.tcp/ip协议中tcp四次挥手各代表什么意思?为什么第二次第三次连续挥手?
27.在linux系统中如何查看nginx进程?如何查看端口号?如何查看内存使用情况?
28.java项目如何部署?
29.性能测试中tps上不去可能有哪些原因?
30.接口测试中,登录接口需要验证码,该如何取到验证码?
31.http状态码有哪些?各代表什么意思
?
32.有100ml的酱油和100ml的醋,从酱油中舀10ml到醋中,再从醋中舀10ml到酱油中,问酱油中的醋多还是醋中的酱油多?
33.心算2的61次方的个位数是多少?
34.以前工作中做的最好的成果?
35.用代码输出下题所有可能性:两个队伍,甲队有ABC三人,乙队XYZ三人,他们要进行一对一对战,抽签决定。已知X不是对C,Z不是对A,B
36.mysql的连表查询?
37.对支付宝转账流程写测试点?
38.对于测试开发的理解?
39.对于测试架构师的理解?
40.最近在学习的技术?
41.python如何进行爬虫?
42.如何测试dubbo接口?
43.使用什么前端、后端框架进行的测试系统开发?
44.性能测试中,服务器的cpu占用率高好还是低好?为什么?
45.内存溢出和内存泄露的区别?
46.作为一个测试leader,手下有组员,该如何指导组员开展自动化测试工作?
47.在上家公司的薪资水平?
48.从输入域名到展示页面发生了什么?
49.介绍一下产品业务流程调用的服务的链路?
50.测试用例编写的策略(包括哪些种类的测试)?
51.在项目迭代过程中是否有和开发沟通代码架构,设计逻辑?
52.测试计划包含什么内容?
53.数据库事务的概念?事务的四个特性?
54.数据库索引的念?他们的区别?
56.敏捷迭代和瀑布流迭代的种类?索引的优缺点?一个表最多几个索引?为什么索引可以加快检索速度?
55.乐观锁的概念?悲观锁的概区别?敏捷迭代中的两个清单三个角色四个仪式分别指什么?
57.docker的概念?
58.给到一个登陆框,需要进行哪些测试,并设计测试用例?
59.在性能测试中发现cpu占用过高应该如何进行分析?
60.压力测试和负载测试的区别?