这里收集了软件测试面试过程中的经典题目,欢迎投稿!
读者请根据自己的实际情况对列出的题目进行取舍,不一定要全部掌握。
大部分的题目没有完全标准的答案,合理即可。
如果这个项目对你有帮助,欢迎 star。
(本篇列出题目,答案请移步 answer.md)
欢迎大家将软件测试面试过程中被提问到的问题以及答案共享出来,您可以:
- 使用 Pull Request 提交
-
阐述软件生命周期都有哪些阶段?常见的软件生命周期模型有哪些?
-
什么是版本控制,常用的版本控制系统有哪些?
-
简述软件测试与软件开发之间的关系?
-
线上版本如何测试和更新?
-
初进公司如何熟悉项目?
-
软件测试的定义和目的分别是什么?
-
常见测试模型有哪些?
-
请根据”V"模型分别概述测试人员在软件的需求定义阶段、设计阶段、编码阶段、系统集成阶段的工作任务及其相应生成的文档?
-
编写测试计划的目的是什么?
-
什么是测试方案?测试方案和测试计划的区别是什么?
-
测试计划编写的六要素?
-
项目版本执行过程中,测试人员如何把控测试进度?
-
怎样做好测试计划?
6.怎样做好任务跟踪?
怎样做好漏测分析?
-
测试人员在软件开发过程中的任务是什么?
-
请列出你所知道的软件测试种类,至少5项?
-
黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系
-
白盒测试与黑盒测试及其常用测试方法概念?
-
简述黑盒测试和白盒测试的优缺点?
-
在没有产品说明书和需求文档的情况下能够进行黑盒测试的设计吗?
-
简述集成测试与系统测试关系
-
单元测试的策略有哪些,主要内容有哪些?
-
白盒测试逻辑覆盖有哪几种覆盖标准,覆盖率最高的是什么?
-
Beta测试和Alpha测试有什么区别?
-
简述软件测试中什么叫文档测试
-
简述除用户文档外,文档测试还需要关注哪些文档
-
紧急插入需求,测试时间不足,如何处理
-
软件的安全性应从哪几个方面去测试
-
软件测试的基本流程有哪些?
-
测试结束的标准是什么?
-
软件测试的原则是什么?
-
什么是测试用例,测试用例的基本要素?
-
描述测试用例设计的完整过程?
-
好的测试用例有哪些特点?
-
写测试用例时要注意什么问题
-
如何在有限的情况下提高测试效率,保证产品的上线质量?
-
如何降低漏测率
-
测试用例的基本设计方法
-
测试为什么要写测试用例
-
产品上线后你负责的模块出现错误,用户反馈不好,你是怎么解决的?
-
测试用例在整个测试工作中的地位及其作用
-
什么是缺陷报告,缺陷报告的作用,缺陷报告的要点
-
软件测试缺陷报告的5C原则
-
软件缺陷的生命周期?
-
缺陷描述(报告单) 中应该包括哪些内容?
-
如何提高缺陷的记录质量?
-
如果一个缺陷被提交后,开发人员认为不是问题,怎么处理?
-
你在测试过程中发现一个重现低的bug,你如何处理?
-
缺陷的优先级划分和描述
-
开发未提测,上线出问题后,被质疑时如何处理?
-
测试的时候使用了哪些工具来辅助
-
一个有广告的纸杯子,请设计测试用例?
-
一个身份证号码输入框,怎么设计用例?
-
登录功能怎么设计测试用例?
-
移动端和web端测试有什么区别
-
测试一个C/S客户端时,需要考虑的因素
-
测试电梯,请详细描述
-
对一只圆珠笔进行测试
-
测试一个网上购物的购物
-
请以微信点赞,功能点进行测试
-
搜索框怎么测
-
你熟悉的软件项目管理工具有哪些?
-
结合你的测试工作中使用的管理缺陷的工具,讲一下使用此工具描述软件缺陷跟踪管理流程?
-
简述常用的Bug管理或者用例管理工具,并且描述其中一个工作流程?
-
禅道和qc的区别?
-
什么是内存泄漏?什么是内存溢出?二者有什么区别?
-
了解的操作系统有哪些?
-
什么是局域网,广域网?
-
10M兆宽带是什么意思?理论下载速度是多少?
-
什么是IP地址?
-
OSI七层网络模型的划分?
-
TCP和UDP有什么不同?
-
HTTP属于哪一层的协议?
-
HTTP和HTTPS的区别?
-
cookies和session的区别?
-
HTTP的get请求和post请求的区别?
-
HTTP1.0和HTTP1.1有什么区别
-
TCP的连接建立过程,以及断开过程?
-
常用协议端口号SSH、DHCP、HTTP、FTP、 SMTP、DNS等?
-
客户端使用DHCP获取IP的过程?
-
写出某个网段的网络地址和广播地址?
-
什么是VPN都有什么类型?
-
B/S和C/S的区别
-
线程和进程的区别
-
常用的响应码
-
计算机基本组成
-
一条指令在CPU的执行过程
-
计算机的逻辑部件
-
冒泡排序
-
插入排序
-
希尔排序
-
快速排序
-
直接选择排序
-
堆排序
-
归并排序
-
基数排
-
斐波那契数列求N
-
字符串反序输出
-
判断回文
-
统计python源代码文件中代码行数,去除注释,空行,进行输出
-
python调用cmd并返回结果
-
冒泡排序
-
1,2,3,4这4个数字,能组成多少个互不相同的且无重复的三位数,都是多少?
-
给定一个整数N,和一个0-9的数K,要求返回0-N中数字K出现的次数
-
请用python打印出10000以内的对称数(对称数特点:数字左右对称,如:1,2,11,121,1221等)
-
判断101-200之间有多少个素数,并输出所有的素
-
一个输入三角形的函数,输入后输出是否能组成三角形,三角形类型,请用等价类划分法设计测试用例
-
代码中要修改不可变数据会出现什么问题?抛出什么异常
-
代码中要修改不可变数据会出现什么问题?抛出什么异常
-
print 调用Python中底层的什么方法?
-
简述你对input()函数的理解?
-
python两层列表怎么提取第二层的元素
-
range和xrange的区别?
-
阅读下面的代码,写出AO, A1至An的量终值了
-
考虑以下Python 代码,如果运行结束,命令行中的运行结果是什么?
-
现有字典d={'a':24,'g':52,'i':12,'k':33}请按字典中的value 值进行排序?
-
说一下字典和json 的区别?
-
什么是可变、不可变类型?
-
存入字典里的数据有没有先后排序?
-
字典推导式?
-
如何理解Python中字符串中的\字符?
-
请反转字符串“aStr” ?
-
请按alist 中元素的age由大到小排序
-
列表增加
-
取值和修改取值:列表名[index] : 根据下标来取值
-
删除del列表名[index] :删除指定索引的数据
-
列表名.remove(数据):删除第一个出现的指定数据
-
列表名.pop() :删除末尾的数据,返回值:返回被删除的元素
-
列表名.pop(index) :删除指定索引的数据,返回被删除的元素
-
列表名.clear() :清空整个列表的元素
-
排序列表名.sort() :升序排序从小到大
-
列表名.sort(reverse=True) :降序排序从大到小
-
列表名.reverse() :列表逆序、反转
-
len(列表名) :得到列表的长度
-
列表名.count(数据) :数据在列表中出现的次数
-
列表名.index(数据) :数据在列表中首次出现时的索引,没有查到会报错
-
if数据in列表:判断列表中是否包含某元素
-
循环遍历
-
写一个列表生成式,产生一个公差为11的等差数列
-
给定两个列表,怎么找出他们相同的元素和不同的元素
-
请写出一段Python代码实现删除一个list 里面的重复元素
-
给定两个listA,B, 请用找出A ,B中相同的元素,A ,B中不同的元素
-
快速去除列表中的重复元素
-
交集:共有的部分
-
并集:总共的部分
-
差集:另一个集合中没有的部分
-
对称差集(在a或b中,但不会同时出现在二者中)
-
对称差集(在a或b中,但不会同时出现在二者中)
-
4G内存怎么读取一个5G的数据?
-
现在要处理一个大小为10G的文件,但是内存只有4G,如果在只修改get_lines函数而其他代码保持不变的情况下,应该如何实现?需要考虑的问题都有哪些?
-
read、readline 和readlines 的区别?
-
Python函数调用的时候参数的传递方式是值传递还是引用传递?
-
对缺省参数的理解?
-
为什么函数名字可以当做参数用
-
Python中pass 语句的作用是什么?
-
map函数和reduce 函数?
-
递归函数停止的条件?
-
回调函数,如何通信的?
-
Python主要的内置数据类型都有哪些? print dir( 'a' )的输出?
-
print(list(map(lambda x:x*x, [y for y in range(3)]))的输出?
-
什么是lambda函数?有什么好处?
-
什么是lambda函数?它有什么好处?写一个匿名函数求两个数的和?
-
Python中的可变对象和不可变对象?
-
Python中is和==的区别?
-
Python的魔法方法?
-
面向对象中怎么实现只读属性?
-
谈谈你对面向对象的理解?
-
.Python里match 与search 的区别?
-
Python字符串查找和替换?
-
用Python 匹配HTMLgtag的时候,<.>和<*?>有什么区别
-
请写出下列正则关键字的含义?
- 在except中return后还会不会执行finally中的代码?怎么抛出自定义异常
- 介绍一下except的作用和用法? 返回目录
-
常用的Python 标准库都有哪些?
-
赋值、浅拷贝和深拷贝的区别?
-
_init_ 和 ____new_____的区别?
-
Python里面如何生成随机数
-
输入某年某月某日,判断这一天是这一年的第几天? (可以用Python 标准库)
-
打乱一个排好序的list 对象alist ?
-
说明一下os.path 和sys.path 分别代表什么?
-
Python的sys 模块常用方法?
-
模块和包是什么?
-
. Python 是强语言类型还是弱语言类型?
-
谈一下什么是解释性语言,什么是编译性语言
-
Python中有日志吗?怎么使用?
-
Python是如何进行类型转换的?
-
工具安装问题
-
关于Python程序的运行方面,有什么手段能提升性能?
-
Python中的作用域?
-
什么是Python ?
-
什么是Python 的命名空间?
-
你所遵循的代码规范是什么?请举例说明其要求?
-
核心类差异
-
废弃类差异
-
修改类差异
-
第三方工具包差异
-
如何查看CPU信息?
-
查看占用CPU使用率最高的进程?
-
如何查看一个文件的末尾50行?
-
如何过滤文件内容中包含”ERROR “的行?
-
查看某端口号?
-
查看某进程号?
-
rep和find的区别? grep都有哪些用法?
-
查看IP地址?
-
创建和删除一个多级目录?
-
在当前用户家目录中查找haha.txt文件?
-
如何查询出tomcat的进程并杀掉这个进程,写出linux命令?
-
动态查看日志文件?
-
查看当前机器listen的所有端口?
-
把一个文件夹打包压缩成.tar.gz的命令,以及解压拆包.tar.gz的命令?
-
Xshell工具如果想要实现从服务器上传或者下载文件的话,可以在服务器上安装什么包?
-
/etc/passwd的前五行内容为例,提取用户名?
-
在linux中find和grep的区别?
-
命令”tail myfile" 表示什么意思?命令head myfile是什么意思?
-
在vim编辑器里,哪个命令能将光标移到200行?进行字符串查找使用什么命令?怎样从插入模式切换为命令模式
-
如何查询内存占用情况
-
Linux查看真是使用的内存命令
-
更改服务器时间
-
Linux下查看系统任务状态的命令
-
Linux下查看进程的命令
-
Linux下查看系统进程中是否有Tomcat在运行的命令
-
Linux下如何查看当前运行的所有Jenkins程序的进程
-
Linux下设置IP地址的命令和格式
-
Linux下查看系统硬盘空间的命令
-
Linux下查看磁盘空间
-
查看当前文件夹下的磁盘使用情况
-
将文件A.txt 从/home/test复制到/data/test下
-
查询C.log中带有tasklD=12345的内
-
每天9点执行脚本/home/
-
抽取xxx.log日志文件中,包含502的行
-
如何在Linux下查找/use/proc目录下所有包含名称中包含test串的文件或者文件
-
实时查看日志/data/log/service/error.log的命令
-
打印显示日志/data/log/service/error.log包含字段[ErrorCode=80]的日志信息命令
-
在一个目录下的多个文件中查找手机号“138138” 的记
-
如何查找一个文件大小超过60M的文件
-
Linux下如何用命令查看实时日志
-
用shell命令查询目录下全部.svn的文件并删除?
-
什么是数据库?
-
什么是关系型数据库,主键,外键,索引分别是什么?
-
表的连接查询方式有哪些,有什么区别?
-
SQL的select 语句完整的执行顺序?
-
说一下Mysql数据库存储的原理?
-
事务的特性?
-
数据库索引?
-
数据库怎么优化查询效率?
-
你用的Mysql是哪个引擎,各引擎之间有什么区别?
-
如何对查询命令进行优化?
-
数据库的优化?
-
Sql注入是如何产生的,如何防止?
-
NoSQL和关系数据库的区别?
-
MySQL与MongoDB本质之间最基本的差别是什么
-
Mysql数据库中怎么实现分页?
-
sq|语句怎么看效率?
-
提取数据库中倒数10条数据?
-
Mysql 数据库的操作?
-
优化数据库?提高数据库的性能?
-
存储过程和函数的区别?
-
Mysql开启General-log 日志?
-
请写出truncate
-
delete、drop 的区别
-
Student- Sourse- SC-Teacher表关系如下:
-
员工信息A-员工亲属信息表B表关系如下:
-
部门表dept-雇员表emp表关系如下:
-
Student- coures - Studentcourse表关系如下:
-
看下图回答问题
-
SQL操作,有两张表,如下图所示题目
-
懒投资首页的懒人播报,统计了在懒投资平台的投资富豪榜,对应的库表简化如下:
-
描述用浏览器访问www.baidu.com的过程?
-
了解的常用浏览器有哪些?
-
以京东首页为例,设计用例框架。(注意框架设计逻辑, 区域划分,专项测试等,不需要详细用例,需要查看PC可直接和辨识管提要求)
-
你所用到的测试方法和测试策略有哪些?编写测试用例时包含哪些因素?请结实际操作举例说明(越全越好)
-
测试界面上一个输入框,输入信息后点击保存,你怎样确定是服务端问题还是端问题?
-
如何测试购买下单和退货流程
-
什么是sql注入,什么是跨站脚本,什么是跨站请求伪造?
-
给你一个网站怎么开展测试?
-
电商支付模块的测试如何展开?
-
如何开展兼容性测试?
-
nginx,tomcat,apache都是什么?
-
apache和nginx的区别?
-
Selenium有哪些定位元素方法
-
win7系统中,使用IE浏览器打开www.sogou.com,按回车,1分钟后,显示白页面,请问有哪些原因会导致这个现象,如何进行排查
-
简述Android四大组件及生命周期?
-
当点击APP图标启动程序,说明将要发生那些过程?
-
APP测试的内容主要包括哪些,如何开展?
-
Android的兼容性测试都考虑哪些内容?
-
怎么从apk中查找launchable-activity
-
如果崩溃crush了你会怎么办?如果捕捉不到错误日志你会怎么办?
-
朋友圈点赞,如何设计测试用例
-
app端的话可以100台手机同步测试的
-
了解的安卓自动化测试工具有哪些,使用测工具开展测试的步骤和方法?
-
针对App的安装功能,写出测试点?
-
常见的ADB目录
-
adb命令你知道哪些? adb shell dumpsys dumpsys是什么意思?做什么的?
-
在查看logcat命令日志时候怎么内容保存到本地文件?
-
App崩溃(闪退),可能是什么原因导致的?
-
如何测试监测app的内存使用、CPU消耗、流量使用情况?
-
弱网测试怎么测
-
如何定位APP上的元素,使用appium的inspector了吗,用什么平台做的
-
如何使用xpath定位一个兄弟元素
-
“//*[contains(@text," 登录”)]” 是什么意思
-
自己最熟悉的哪个库,如何使用这些库的,是否做了基于复用的封装,怎么考虑的这些封装
-
自动化测试的框架画一遍,然后解释
-
微信客户端使用搜狗输入法打字,手机屏幕突然黑了,请问有哪些原因会导致这个现象,分别如何排查
-
微信APP有什么地方需要改进的地方
-
如何选择测试手机,如何购买测试手机,多少台测试机
-
如何用fiddler或者Charles进行测试手
-
Appium都有哪些启动方式
-
请写出你所了解的手机操作系统并简述各自的特点
-
Android ROM是否了解不同ROM有什么区别target SDK是什么
-
Xpath定位不到的情况
-
移动端的注册登录和网页端的有什么区别?
-
怎么搭移动端自动化框架的,需要哪些内容?
-
APP在运行过程中为什么会出现卡顿?
-
请写一下支付宝首页的测试用例(要求:逻辑清晰)
返回目录
- 接口类型有哪些
- 手机短信验证码接口怎么测试
- Post请求的body有常见的数据类型?
- 如果模块请求http改为了https, 测试方案应该如何制定,修改?
- 常用HTTP协议调试代理工具有什么?详细说明抓取HTTPS协议的设置过程?
- 多个API的连续调用的测试用例的难点是什么?你是如何解决的?
- 自动化接口测试中,用过哪些测试框架,这些测试框架是怎么管理接口测试用例
- Jmeter中接口的QPS在哪里查看,jmeter如何读取csv.txt文件获取参数
- 接口测试更适合做性能测试还是功能测试
- 描述TCP/IP协议的层次结构,以及每一层中重要协议
- 简要描述OSI模型
- jmeter,一个接口的响应结果如下
返回目录
- 官方文档地址
- 常用自动化测试工具机器运行原理,写出一-段元素查找 的代码?
- 如何开展自动化测试框架的构建?
- 如何设计自动化测试用例
- webdriver如何开启和退出一个浏览器?
返回目录
-
Jmeter的七大原件是什么?有什么作用?
-
聚合报告的每个字段代表的是什么意思?
-
写一个验证电子邮件格式的正则表达式?
-
一台客户端有500个客户与500个客户端有300个用户对服务器施压,有什么区别?
-
LoadRunner的工作原理是什么?
-
LoadRunner脚本如何录制和编写?
-
LoadRunner中的Think Time有什么作用?
-
在搜索引擎中输入汉字就可以解析到对应的域名,请问如何用LoadRunner进行测试
-
一台客户端有三百个客户与三百个客户端有三百个客户对服务器施压,有什么区别?
-
2018年春运前第10天中午(2018 年1月23日),12306 服务器挂了大概30分钟,工程师抢修以后,马上上线,之后又挂了,请问有哪些原因会造成这个情况?
-
在搜索引擎中输入汉字就可以解析到对应的域名,请问如何用LoadRunner进行测试
-
性能压测过程中,当面对大量并发用户调用的时候,服务器端CPU的使用率是高好还是低好?为什么?
-
测试某一个接口的压测,需要准备哪些数据,怎么进行参数化,不同的测试压力指标,需要准备多少数据比较好?
-
APP崩溃率居高不下,通过哪些措施来发现这些问题,并后续处理?
-
常见性能测试的方法有哪些?举例解释一下?
-
你认为性能测试的目的是什么?做好性能测试的工作的关键是什么?
-
服务端性能分析都从哪些角度来进行?
-
如何理解压力测试,负载测试以及性能测试?
-
编写一个http接口性能测试方案,测试过程的关注点有哪些,流程等?
-
如何判断是否有内存泄漏及关注的指标?
-
你觉得测试在一个公司中扮演什么角色?
-
Linux命令查看进程的命令,杀死进程的命令是什么?
-
压力测试,负载测试,性能测试的关系?
-
工作当中运用了哪些linux命令,什么场景下用的?
-
你们公司的测试流程是什么?
-
测试中有没做过风险评估?
-
自动化登录成功如何校验?
-
Mysql存储过程是什么?
-
给你几个英文单词(举例Hello world) ,设计简单脚本使其反着输出单词(这里输出world hello)
-
阶乘(N ! 题)如下: 10000 !得出末尾有多少个零
-
测试计划都包括什么?测试计划中的任务和时间都是我评估和分配吗?
-
觉得Web端和手机端测试有什么不同?
-
selenium和Appium是怎么联系的?有什么关系?
-
测试计划是哪个开发阶段写的?在编码之前就要把测试计划写好吗?
-
对于移动端混合型的元素你们是怎么抓取的?
-
谁来进行自动化测试用例的维护?
-
介绍一 下w模型和H模型的区别?
-
HTML常用的标签有哪些,他们代表的是什么意思?
-
HTTP请求代码有哪些,他们代表的是什么意思?
-
如果你测试的发现需求与开发的需求不一 致,你是如何处理?
-
给你一个淘宝购物车模块你会怎么测试?
-
V模型和W模型有哪些优缺点
-
从开发到上线会测是几轮?
-
搜索功能的测试用例你觉得会包括哪些?
-
请分别针对性能测试,负载测试和压力测试举出一简单的而例子?
-
什么时候开始执行性能测试?
-
性能测试时是不是必须进行参数化?为什么要创建参数? LR中如何创建参数
-
LR中如何实现多用户并发操作,要进行那些设置?
-
LR中有哪几种并发执行策略?它们的含义是什么?
-
软件验收测试的合格通过标准是什么?
-
区别阶段评审与同行评审?
-
软件验收测试包括?
-
系统测试的策略有?
-
设计系统测试需要参考的项目文档有?
-
对面向过程的系统采用的集成策略有?
-
怎么做好文档测试?
-
系统测试时候需要同行评审?为什么?
-
比较负载测试,容量测试和轻度测试的区别?
-
软件缺陷等级应该如何划分?
-
商城中购买功能的流程图?
-
如果开发修改了底层代码,如何查询影响范围?
-
测试过程中输出的文件件有哪些?
-
软件测试主要分为哪四类测试?
-
测试分析主要分析的内容有哪些?
-
操作说明书的帮助文档制作工具有哪些?
-
设计测试用例的过程中应该考虑到哪两种输入?
-
试描述对一-个大型软件项目的测试全过程,并描述如何把好产品质量关(该项目是一站式,其中包含十个子系统。且相关文档健全?
-
网络层协议有哪些?传输层协议有哪些?应用层协议有哪些?
-
Android和ios系统的有哪些区别?
-
Web页面主要测试那些内容?
-
Web测试有哪些性能专项?
-
测试app消息推送通知时候要考虑哪些内容?
-
软件质量评估常用那些指标?
-
试着画出缺陷生命周期的缺陷转换图,并标转换条件?
-
软件评审- -般有哪些人参加,其目的是什么?
-
简单描述TCP/IP协议与Http协议的区别?
-
有一款app它可以监控和控制跑步机,请罗列出测试点和运用到的那些测试方法?
-
你们是如何编写测试用例的?如何保证用用例的覆盖度?如何维护用例?
-
手机qq登录功能的测试点?
-
质量评估有哪些指标?
-
软件质量保证体系是什么?国家标准中与质量保证管理相关的几个标准是什么?他们的编号和全称是什么?
-
软件测试和质量保证有什么区别,请说明你的看法
-
回归测试的范围?
-
白盒和黑盒的区别,你是怎么运用的?
-
描述一下使用过的测试管理工具,及bug跟踪过程
-
描述曾经做过的项目的bug分析过程及举例说明一下bug分析结果。
-
假设正在Windows计算器上执行测试,发现1+1=2, 2+2=5, 3+3=6, 4+4=9,5+5=10,6+6=13, 写一个软件缺陷标题和有效描述该问题的软件缺陷描述?
-
假设某个输入由四位数字表示年,两位数字表示月,例如: 201703,测试范围1970-2049,设计测试用例完成对该输入的check