当前位置: 首页 > news >正文

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

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、你觉得你来应聘有哪些优势?

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

 

相关文章:

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

PS:加上参考答案有几十万字,答案就没有全部放上来了,高清打印版本超过400多页,评论区留言直接获取 1、你的测试职业发展是什么? 2、你认为测试人员需要具备哪些素质 3、你为什么能够做测试这一行 4、测试的目的是什么? 5、…...

数据结构秘籍(一)线性数据结构

1.数组 数组(Array)是一种很常见的数据结构。它由相同类型的元素(element)组成,并且是使用一块连续的内存来存储。 我们直接可以利用元素的索引(index)计算出该元素对应的存储地址。 数组的特…...

TFChat:腾讯大模型知识引擎(DeepSeek R1)+飞书机器人实现AI智能助手

效果 TFChat项目地址 https://github.com/fish2018/TFChat 腾讯大模型知识引擎用的是DeepSeek R1,项目为sanic和redis实现,利用httpx异步处理流式响应,同时使用buffer来避免频繁调用飞书接口更新卡片的网络耗时。为了进一步减少网络IO消耗&…...

使用消息队列怎样防止消息重复?

大家好,我是君哥。 使用消息队列时,我们经常会遇到一个可能对业务产生影响的问题,消息重复。在订单、扣款、对账等对幂等有要求的场景,消息重复的问题必须解决。 那怎样应对重复消息呢?今天来聊一聊这个话题。 1.三…...

MySQL安装多版本与版本切换

起因 今天在将一个项目部署到本地,想着是先找到一个功能差不多的开源项目,再在这基础之上进行改动,找到的这个项目使用的MySQL版本是MySQL5.7,应该是比较古早的项目了,但是我现在装的是8.4版本的,所以涉及…...

Docker02 - 深入理解Docker

深入理解Docker 文章目录 深入理解Docker一:Docker镜像原理1:镜像加载原理1.1:unionFS1.2:加载原理 2:分层理解 二:容器数据卷详解1:什么是容器数据卷2:使用数据卷3:具名…...

检查SSH安全配置-sshd服务端未认证连接最大并发量配置

介绍 MaxStartups参数指到SSH守护进程的未经身份验证的最大并发连接数。 逻辑依据 为防止系统因大量待处理的身份验证连接尝试而出现拒绝服务的情况,请使用 MaxStartups 的速率限制功能来保护 sshd 登录的可用性,并防止守护进程不堪重负。 检查方法 …...

HarmonyOS Design 介绍

HarmonyOS Design 介绍 文章目录 HarmonyOS Design 介绍一、HarmonyOS Design 是什么?1. 设计系统(Design System)2. UI 框架的支持3. 设计工具和资源4. 开发指南5. 与其他设计系统的对比总结 二、HarmonyOS Design 特点 | 应用场景1. Harmon…...

C++中的多重继承

在 C 中,多重继承是一种允许一个类同时继承多个基类的特性。这意味着派生类可以继承多个基类的属 性和方法。 多重继承增加了语言的灵活性,但同时也引入了额外的复杂性,特别是当多个基类具有相同 的成员时。 基本概念 在多重继承中&#xff…...

Java基础第14天-坦克大战【1】

Java绘图坐标体系 像素 计算机在屏幕上显示的内容都是由屏幕上的每一个像素组成的。如,计算机显示器的分辨率是800x600,表示计算机屏幕上的每一行由800个点组成,共有600行,整个计算机屏幕共有480000个像素。像素是一个密度单位。…...

Java线程池入门04

1. 提交任务的两种方式 executorsubmit 2. executor executor位于Executor接口中 public interface Executor {void executor(Runnable command); }executor提交的是无返回值的任务 下面是一个具体的例子 package LearnThreadPool; import java.util.concurrent.ExecutorSe…...

【论文笔记-ECCV 2024】AnyControl:使用文本到图像生成的多功能控件创建您的艺术作品

AnyControl:使用文本到图像生成的多功能控件创建您的艺术作品 图1 AnyControl的多控制图像合成。该研究的模型支持多个控制信号的自由组合,并生成与每个输入对齐的和谐结果。输入到模型中的输入控制信号以组合图像显示,以实现更好的可视化。 …...

计算机毕业设计 ——jspssm519Springboot 的幼儿园管理系统

作者:程序媛9688 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等。 🌟文末获取源码数据库🌟 感兴趣的可以先收藏起来,还有大家在毕设选题(免费咨询指导选题)&#xf…...

山东大学软件学院人工智能导论实验之知识库推理

目录 实验目的: 实验代码: 实验内容: 实验结果 实验目的: 输入相应的条件,根据知识库推理得出相应的知识。 实验代码: def find_data(input_process_data_list):for epoch, data_process in enumerat…...

【Uniapp-Vue3】点击将内容复制到剪切板

具体使用方法在官网: uni-app官网https://uniapp.dcloud.net.cn/api/system/clipboard.html大致使用方法如下: // value是需要复制的值 function copyValue (value) { uni.setClipboardData({data: value,success: res>{// 复制成功逻辑},fail:err&…...

英伟达 Isaac Sim仿真平台体验【2】

一、产品基础信息 仿真平台:NVIDIA Isaac Sim 4.1.0硬件配置:NVIDIA RTX 4090 2 (24GB显存)核心特性: Omniverse内核的多GPU物理加速原生PyTorch/TensorFlow集成支持基于USD的场景构建体系 二、GPU加速仿真实战 ▶ 多球体跌落测试 操作步…...

低代码与开发框架的一些整合[3]

1.基本说明 审批流程是企业内部运营的运行流程,与业务板块进行关联,在企业数智化过程中启动业务串联的作用,与AI业务模型及业务agent整合后,将大大提升企业的运行效率以及降低运营风险。 近期对开源的近40个携带流程平台的项目进…...

deepseek-r1-centos-本地服务器配置方法

参考: 纯小白 Centos 部署DeepSeek指南_centos部署deepseek-CSDN博客 https://blog.csdn.net/xingxin550/article/details/145574080 手把手教大家如何在Centos7系统中安装Deepseek,一文搞定_centos部署deepseek-CSDN博客 https://blog.csdn.net/soso67…...

C语言实现通讯录项目

一、通讯录功能 实现一个可以存放100个人的信息的通讯录(这里采用静态版本),每个人的信息有姓名、性别、年龄、电话、地址等。 通讯录可以执行的操作有添加联系人信息、删除指定联系人、查找指定联系人信息、修改指定联系人信息、显示联系人信…...

Effective Java读书笔记 draft

一、创建和销毁对象 1、静态工厂方法代替构造器 class Person{//构造器public Person(){}//静态工厂方法public static Person getInstance(){return new Person();} } 优势:1、有名字,代码更容易阅读理解;2、不用每次被调用时都创建新对…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

接口测试中缓存处理策略

在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

Linux离线(zip方式)安装docker

目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...

QT3D学习笔记——圆台、圆锥

类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

C++.OpenGL (20/64)混合(Blending)

混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...

认识CMake并使用CMake构建自己的第一个项目

1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...