软件测试面试题

1、哪些问题是HTTPS无法解决的?

Http是基于TCP协议的,在网络层的传输耗时比较长,https没有解决这个问题;

http头是不能压缩的,每次要传递很大的数据包,每个连接也只能支持一个请求。

同时https应用了很多加密算法,这些算法的执行也是会影响速度的。

2、说一说你对MySQL引擎的了解

MySQL提供了多个不同的存储引擎,包括处理事务安全的引擎和处理非事务安全的引擎。MySQL8.0支持的存储引擎有InnoDB、MyISAM、Memory、Merge、Archive、CSV等。其中,最常用的引擎是前两个。

InnoDB:

特点:

​ 1、支持ACID

​ 2、CPU效率极高,能处理巨大数据量

​ 3、表可以是任何尺寸

​ 4、支持外键,必定有主键

​ 5、支持聚簇索引

MyISAM:

特点:

​ 1、支持大文件的文件系统和操作系统上支持

​ 2、有较高的插入、查询速度、但不支持事务

​ 3、BLOB和TEXT列可以被索引

​ 4、删除和更新插入操作混合使用的时候,产生更少碎片

​ 5、没有聚簇索引

3、说一说进程有多少种状态,如何转换

有3种状态4种转换,三种状态是阻塞、就绪、运行。四种转换是阻塞->就绪、就绪->阻塞、运行->阻塞、就绪->运行。

(1) 就绪→执行

​ 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态转变成执行状态。
​ 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态转变成执行状态。
(2) 执行→就绪
 
处于执行状态的进程在其执行过程中,因分配给它的一个时间
片已用完而不得不让出处理机,于是进程从执行状态转变成就
绪状态。

(3) 执行→阻塞
 
正在执行的进程因等待某种事件发生而无法继续执行时,便从执行状态变成阻塞状态。

(4) 阻塞→就绪

4、测试计划应该包括的内容

背景、项目介绍、目的、测试范围、测试策略、人员分工、资源要求、进度计划、参考文档、常用术语、提交文档、风险分析

5、测试报告包括的内容

测试背景、测试范围、测试环境、测试方法、测试结果与缺陷分析(主要从功能性能方面来分析)、测试结论与建议、质量或风险评估

6、测试用例的八大要素是?

用例编号、操作步骤、测试标题、重要级别、前置条件、测试输入数据、所属模块、预期结果

7、缺陷包含的要素?

缺陷标题、缺陷描述、缺陷状态、缺陷类型、前置条件、重现步骤、期望结果和实际结果、严重性、优先级、附件、负责人、发现日期、测试人员、测试轮次、项目名称、所属模块

8、 请你会到一下测试的相关流程是什么?

需求分析----测试计划(范围、时间、人员、工具)—测试设计/开发(测试用例)----测试执行(执行测试用例,补充测试用例)——测试评估((覆盖范围。测试了哪些功能,哪些没有测试)BUG的情况的统计)——测试报告

9、 session和cookie的区别

cookie的数据存在客户端的,session的数据存放在服务器端的

cookie不是很安全,别人可以分析你存在本地的cookie,而session是比较安全的

session在一定时间内保存在服务器上,随着访问越来越多会比较占服务器的资源性能,而cookie在这方面就没有这样的短板

单个cookie保存的数据有限的,一般不超过4k,很多网站都限制一个站点,最多保存20个cookie,而session存在在服务端,没有这中数据量的限制,可以保存更复杂的数据

生命周期不一样,cookie的生命周期是累计的,session的生命周期是间隔的

10、get和post请求的区别

get产生一个TCP数据包,post产生两个TCP数据包,对于get请求浏览器会将请求头和请求体一并发送出去,而post会将请求头发送出去,服务器响应100continue,浏览器再将请求体发送出去
get请求会被浏览器主动缓存,而post不会除非手动设置
get只支持url编码,而post支持多种编码方式
get会被完整的保留在浏览器历史记录里而post的参数不会被保留
get请求参数通过url传递,post通过请求体传递
post相对get更安全

get请求的长度是依据当前浏览器的设置规格有不同的长度,不一定是2048

11、做接口测试的时候都碰到哪些状态码?

200表示响应成功,但业务不一定成功。
3xx重定向,服务器要求客户端重新请求一个新的url。postman和jmeter会自动处理
400客户端请求的语法错误,服务器无法理解,比如参数名称不对,多了空格。
401未授权,需要身份认证。
403服务端禁止访问。
404请求的资源未找到,接口地址写错了。
405请求方法不允许。如要求post却用get。
415请求的content-type不一致。如要求json,却传form表单。
500服务端内部出现问题,需查看日志解决。

12、常见协议端口

端口范围
一般用到的是1到65535,其中0一般不使用。端口号可分为3大类:
1、公认端口(Well Known Ports):从0到1023,它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。
2、注册端口(Registered Ports):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。
3、动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。

FTP 21 文件传送(控制端口)
SSH 22
telnet 23 远程通信网
Smtp 25 简单邮件传输协议
dns 53
TFTP(Trivial File Transfer Protocol ),默认的端口号为69/udp
http 80
https 443
Tomcat 8080
orcale 1521
mysql 3306
(后续会不断的增加更多的面试题,希望对大家有帮助)
博客园地址

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值