软件测试八股文,软件测试常见面试合集【附答案】

PS:加上参考答案有几十万字,答案就没有全部放上来了,高清打印版本超过400多页,评论区留言直接获取

 1、你的测试职业发展是什么?

2、你认为测试人员需要具备哪些素质

3、你为什么能够做测试这一行

4、测试的目的是什么?

5、测试分为哪几个阶段?

6、单元测试的测试对象、目的、测试依据、测试方法?

7、怎样看待加班问题

8、结合你以前的学习和工作经验,你认为如何做好测试。

9、你为什么选择软件测试行业

10、根据你以前的工作或学习经验描述一下软件开发、测试过程,由哪些角色负责,你做什么

11、根据你的经验说说你对软件测试/质量保证的理解

12、软件测试的流程是什么?

13、你对SQA的职责和工作活动(如软件度量)的理解?

14、说说你对软件配置管理的理解

15、怎样写测试计划和测试用例

16、说说主流的软件工程思想(如CMM、CMMI、RUP,XP,PSP,TSP等)的大致情况及对他们的理解

17、你是怎样保证软件质量的,也就是说你觉得怎样才能最大限度的保证软件的质量?

18、基于目前中国的国情,大多数公司的项目进度紧张、人员较少、需求文档根本没有或者很不规范,你认为在这种情况下怎样保证软件的质量?(大多数公司最想知道的就是在这种困难面前你该怎么保证软件的质量,因为这些公司一般就是这种情况--既不想投入过多又想保证质量)

19、一个测试工程师应该具备哪些素质和技能?

20、做好软件测试的一些关键点

.........

1、Linux中各个目录的作用

2、怎么查看当前进程?怎么执行退出?怎么查看当前路径?

3、怎么清屏?怎么退出当前命令?怎么执行睡眠?怎么查看当前用户 id?查看指定帮助用什么命

4、Ls 命令执行什么功能?可以带哪些参数,有什么区别?

5、Linux硬链接与软连接

6、建立软链接(快捷方式),以及硬链接的命令。

7、目录创建用什么命令?创建文件用什么命令?复制文件用什么命令?

8、文件权限修改用什么命令?格式是怎么样的?

9、查看文件内容有哪些命令可以使用?

10、随意写文件命令?怎么向屏幕输出带空格的字符串,比如”hello world”?

11、移动文件用哪个命令?改名用哪个命令?

12、复制文件用哪个命令?如果需要连同文件夹一块复制呢?如果需要有提示功能呢?

13、删除文件用哪个命令?如果需要连目录及目录下文件一块删除呢?删除空文件夹用什么命令?

14、Linux 下命令有哪几种可使用的通配符?分别代表什么含义?

15、用什么命令对一个文件的内容进行统计?(行号、单词数、字节数)

16、Grep 命令有什么用?

17、Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?

18、利用 ps 怎么显示所有的进程? 怎么利用 ps 查看指定进程的信息?

19、哪个命令专门用来查看后台任务?

20、管道符的作用

21、终止进程用什么命令? 带什么参数?

22、搜索文件用什么命令? 格式是怎么样的?

23、使用什么命令查看用过的命令列表?

24、使用什么命令查看磁盘使用空间?空闲空间呢?

25、du作用?

26、使用什么命令查看网络是否连通?

27、使用什么命令查看 ip 地址及接口信息?

28、通过什么命令查找执行命令?

29、du 和 df 的定义,以及区别?

30、如果一个linux新手想要知道当前系统支持的所有命令的列表,他需要怎么做?

31、bash shell 中的hash 命令有什么作用?

32、怎样一页一页地查看一个大文件的内容呢?

33、怎样查看一个linux命令的概要与用法?假设你在/bin目录中偶然看到一个你从没见过的的命令,怎样才能知道它的作用和用法呢?

34、使用哪一个命令可以查看自己文件系统的磁盘空间配额呢?
...........

1. 列表和元组的区别?

2. 列表和字典有什么区别?

3. 列表去重方法

4. 字典的原理?

5. 什么是lambda函数?它有什么好处?

6. super 是干什么用的?为什么要使用 super?

7. *args和**kwargs的区别?

8. 对装饰器的了解及应用场景?

9. 解释下生成器、迭代器

10. Python内存管理?

11. 介绍一下Python拷贝?

12. 谈下python的GIL

13. 你对python面向对象有什么概念?能举一个测试工作中用到的面向对象场景吗?

..........

 1、什么是接口?

2、接口组成的要素是什么?

3、你对requests了解多少

4、如何使用requests  

5、requests.get作用   

6、requests.get语法形式

7、requests.get的返回值  

8、接口测试的优势是什么

9、什么是接口测试

10、为什么要写用例

11、接口测试用例设计主要考虑哪些   

12、做接口测试运用过哪些测试工具  

13、抓包工具用过哪些  

14、接口功能测试用例包含哪些内容

15、接口测试报告包含哪些内容

16、测试指标范围包含哪些

17、response返回内容有哪些 

18、TCP/IP参考模型有哪几层

19、常用协议的端口号  

20、常见的状态码有哪些  

21、post请求四种传送正文的方式有哪些

22、你们公司的接口测试流程是怎样的   

23、请简述一下cookie、session以及token的区别

24、接口测试如何设计用例     

25、通用接口用例设计     

26、根据业务逻辑来设计用例     

27、接口测试注意事项     

28、接口测试执行中对比数据库吗     

29、谈谈你对HTTP协议的了解     

30、get和post请求有什么区别     
..........

1、描述一下你们公司的性能测试流程?
2、如果确定系统最大负载?
3、并发数是怎么确定的?
4、性能测试在什么环境执行?
5、性能测试什么时候执行?
6、性能测试需求的来源?
7、如何实现300用户的并发?**
8、什么情况下要做关联,关联是怎么做的?
9、有验证码的功能,怎么做性能测试?
10、性能测试指标有哪些?分别是什么含义?
11、如果判断系统瓶颈?
12、如何分析性能测试结果?
13、你在性能测试中遇到哪些性能问题?
14、性能测试如何防止数据污染?
15、怎么根据线下环境评估线上环境的性能?
16、出现内存泄露的根本原因是什么?你是怎么定位内存泄露原因的?
17、tps压不上去,可能有哪些方面的原因?
18、性能场景怎么设计?一般都有哪些性能场景?
19、什么是集合点,什么场景下需要用集合点?
20、服务器的cpu使用率和load是什么关系?
21、性能测试脚本中为什么要做参数化?
22、性能脚本中的乱码问题怎么解决?
23、在性能测试工具中,使用线程和进程压测有什么区别,Loadrunner和Jmeter分别使用什么进
24、性能测试脚本中,定义事务的原则是什么?
25,怎么进行性能场景设计?

.........

1、自动化代码中,用到了哪些设计模式?

2、什么是断言( Assert) ?

3、什么是web自动化测试

4、什么是Selenium?

5、写出Selenium中你最熟悉的接口或类

6、元素定位类型有哪些?

7、Xpath是什么?

8、findElement()和findElements(方法有什么区别

9、登录按钮除了用click方法进行点击以外还有其他方式吗?

10、怎么提高Selenium脚本的执行速度

11、怎么对含有验证码的功能进行自动化测试的

12、怎么验证复选按钮是不是被选中

13、如何处理alert弹窗?

14、下拉菜单中如何去选择一个菜单项?

15、如何模拟浏览器的前进和后退、刷新操作

16、怎么获得当前页面的URL?

17、WebDriver的close()和quit(方法的区别是什么?

18、你觉得自动化测试用哪些缺陷

19、Web端功能自动化,如何实现(非input型上传)上传文件

20、遇到 这种class中间有空格的控件,如何通过class定位?

21、Selenium自动化,遇到 iframe 如何处理?

22、Web端功能自动化中,如何切换句柄。

23、测试中遇到 readonly 属性的控件,需要如何处理?简述一下思路

需求:给定一个只包含正整数且非空的数组,返回该数组中重复次数最多的前N个数字(返回结果按重复次数从多到少降序), 请用熟悉的语言实现该需求。10分钟内写出来

24、例如: passwd={"admin'":"123321","user1":" 123456"} 满足一下条件?
.............

 一、索引相关
(1)什么是索引?
(2)索引是个什么样的数据结构呢?
(3)为什么使用索引?
(4)Innodb为什么要用自增id作为主键?
(5)Hash 索引和 B+ 树索引有什么区别或者说优劣呢?
(6)什么是聚簇索引
(7)说一说索引的底层实现?
(8)索引有哪些优缺点?
(9)聚簇索引和非聚簇索引的区别
(10)MyISAM和InnoDB实现B+树索引方式的区别是什么?
(11)MySQL中有几种索引类型,可以简单说说吗?
(12)覆盖索引是什么?
(13)非聚簇索引一定会回表查询吗?
(14)联合索引是什么?为什么需要注意联合索引中的顺序?
(15)创建的索引有没有被使用到?或者说怎么才可以知道这条语句运行很慢的原因?
(16)那么在哪些情况下会发生针对该列创建了索引但是在查询的时候并没有使用呢?
(17)为什么Mysql用B+树做索引而不用B-树或红黑树、二叉树
(18)MySQL索引种类
(19)索引在什么情况下遵循最左前缀的规则?
二、事务相关
(1)什么是事务?
(2)ACID是什么?可以详细说一下吗?
(3)MySQL中为什么要有事务回滚机制?
(4)数据库并发事务会带来哪些问题?
(5)怎么解决这些问题呢?MySQL 的事务隔离级别了解吗?
(6)Innodb使用的是哪种隔离级别呢?
(7)不可重复读和幻读区别是什么?可以举个例子吗?
三、锁相关
(1)对 MySQL 的锁了解吗?
(2)MySQL 锁的分类
(3)行级锁、表级锁、页级锁的描述与特点
(4)共享锁 、 排他锁的描述
(5)悲观锁与乐观锁
(6)数据库悲观锁和乐观锁的原理和应用场景分别有什么?
(7)MySQL常用存储引擎的锁机制?
(8)InnoDB 存储引擎有几种锁算法?
(9)什么是死锁?
(10)死锁出现的案列?
(11)如何处理死锁?
(12)如何避免死锁?
(13)Innodb默认是如何对待死锁的?
(14)如何开启死锁检测?
(15)什么是全局锁?它的应用场景有哪些?
(16)使用全局锁会导致的问题?
(17)优化锁方面你有什么建议?
四、存储引擎相关
(1)MySQL 支持哪些存储引擎?
(2)InnoDB 和 MyISAM 有什么区别?
(3)你了解MySQL的内部构造吗?一般可以分为哪两个部分?
(4)说一下MySQL是如何执行一条SQL的?具体步骤有哪些?
(5)SQL 的执行顺序?
(6)简述触发器、函数、视图、存储过程?
(6)听说过视图吗?那游标呢?
(6)视图的作用是什么?可以更改吗?
五、表结构相关
(1)为什么要尽量设定一个主键?
(2)主键使用自增 ID 还是 UUID?
(3)字段为什么要求定义为not null?
(4)如果要存储用户的密码散列,应该使用什么字段进行存储?
(5)说一说Drop、Delete与Truncate的共同点和区别?
(6)数据库中的主键、超键、候选键、外键是什么?
六、其他问题
(1)MySQL 中的 varchar 和 char 有什么区别?
(2)varchar(10) 和 int(10) 代表什么含义?
(3)MySQL的binlog有有几种录入格式?分别有什么区别?
(4)超大分页怎么处理?
(5)说一说三个范式?
(6)left join、right join以及inner join的区别?
(7)什么是数据库约束,常见的约束有哪几种?
(8)什么是sql注入?
(9)简述数据库的读写分离?
(10)MySQL数据库cpu飙升的话,要怎么处理呢?
(11)MYSQL的主从延迟,你怎么解决?
(12)如果让你做分库与分表的设计,简单说说你会怎么做?
(13)count(1)、count(*)与count(列名)的执行区别
(14)sql 语句中where 1=1的作用
(15)sql中null与空值的区别
七、优化相关
(1)日常工作中你是怎么优化SQL的?
(1.1)表结构优化
(1.2)查询优化
(1.3)索引优化
(1.4)慢查询优化
..............

1、自我介绍及工作经验介绍?

2、为什么要来学习或做测试工作?为什么要离职?

3、你爱好是什么特长是什么?优点缺点是什么?

4、假如你面试上了有两个人,另外一个人是组长,你会怎么做?假如你的组长在某些方面不如你,你会怎么做?

5、你三到五年的职业发展方向或职业规划是什么?

6、假如你来公司工作,你认为你能为公司作出什么贡献?

7、你希望的薪资待遇是?

8、你对公司加班的问题怎么看?周六日也加班呢?

9、你大学生活是什么?你大学课程是什么?什么给你留下的印象最深?

10、工作中出现不同意见了,如何与开发人员进行沟通?你认为如何才能与客户进行良好的沟通?

11、测试与开发沟通如何提高效率和改善沟通效果?测试工程师的素质和技能?

12、你觉得软件测试是一个什么样的行业?你希望以后的软件测试是怎么样的一个行业?

13、谈谈软件测试在企业的地位,也可以结合软件生命周期来谈

14、通常你对于别人批评你会有什么样的反应?

15、你的好友是如何评价你的?你的项目组长是如何评价你的?

16、谈谈自己对软件测试的理解,包括测试的流程和应注意的地方是什么。

17、为什么要在一个团队中开展软件测试工作?

18、你找工作时,最重要的考虑因素为何?

19、你对我们公司了解有多少?

20、居住在哪里?离公司远不远?

21、在即将完成这次笔试前,您是否愿意谈一些自己在以往的学习和工作中获得的工作经验和心得体会?(可以包括软件测试、过程改进、软件开发或者与此无关的其他方面)

22、测一个三角形是普通三角形、等腰三角形、等边三角形的流程图,测试用例。

23、你觉得什么样的人最难相处?

24、你觉得你来应聘有哪些优势?

这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

  • 18
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值