一些常见的面试题(自己记录)

  1. 自我介绍

  1. 为什么选这个职位
1.兴趣,因为对测试比较感兴趣,维度不同,开发需要深度,比如对某项技术的实现要进行深入研究,而测试
需要广度,要有一定的测试思维,发散思维,需要比较细心 
2.技术方面,因为感兴趣,所以自己也会去学习软件测试相关技术,包括测试基础,自动化测试,性能等,并
且通过实习,做项目积累了一定的经验,测试岗能让我更好的发挥自己的能力  
3.职业规划 很早就已经决定了以后往测试开发的方向发展 为此我也学习过开发相关的一些技术 相信这能在
我不断积累更多的测试技术后 能够为转型为测试开发奠定好基础
  1. https和http有什么区别:
 1、端口
https的端口是443,而http的端口是80,当然两者的连接方式也是不太一样的。

2、传输数据
http传输是明文的,而https是用ssl进行加密的。https具有安全性

3、申请证书
https传输一般是需要申请证书,申请证书可能会需要一定的费用。

4.URL输入到页面展现,经历了什么:

1)URL 解析
(2)DNS 解析:将域名解析成 IP 地址
(3)TCP 连接:TCP 三次握手
(4)发送 HTTP 请求
(5)服务器处理请求并响应 HTTP 报文
(6)浏览器解析渲染页面
(7)断开连接:TCP 四次挥手
  1. get和post的区别
1、传送方式:get通过地址栏传输,post通过报文传输。
2、传送长度:get参数有长度限制(受限于url长度),而post无限制
3、GET和POST还有一个重大区别,简单的说:
GET产生一个TCP数据包;POST产生两个TCP数据包
长的说:
对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);
而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。
  1. 计算机网络各层功能及常用协议
1.物理层:在物理媒体上为数据端设备透明地传递原始比特流。传输单位是比特。

2.数据链路层:功能可以概括为成帧、差错控制、流量控制和传输管理等。传输单位是帧。

3.网络层:将网络层的协议数据单元(分组)从源端传到目的端,为分组交换网上的不同主机提供通信服务。对分组进行路由选择,并实现流量控制、阻塞控制、差错控制和国际互联等功能。传输单位是数据报。
常用协议:
 - ARP:根据IP地址获取对应的MAC地址,通过一问一答实现交互,问是通过广播形式实现,答是通过单播形式。
 - ICMP:在ip网络设备之间发送控制报文,传递差错、控制、查询等信息。可根据ICMP查看要发送的数据是否成功送达。若未成功送达的话,可查看发送失败的原因
 - DHCP:给主机动态的分配ip地址,无需人为参与
 - IP协议:寻址和路由

4.传输层:为端到端提供可靠的传输服务,为端到端连接提供流量控制、差错控制、服务质量、数据传输管理等服务。传输单位是报文段(TCP)或者用户数据报(UDP)- TCP:可靠的、面向连接、传输效率低
 - UDP:不可靠的、无连接、传输效率高

5.会话层:负责管理主机间的通话进程,包括建立、管理以及终止进程间的通话。

6.表示层:主要处理在两个通信系统中交换信息的表示方法。

7.应用层:为特定类型的网络应用提供访问OSI参考模型环境的手段。传输单位是报文。
 - DNS:将域名转换为ip地址
 - FTP:用于ftp客户端和ftp服务器之间进行文本、文件传输
 - SMTP:提供可靠且有效的电子邮件传输的协议
 - HTTP:规定了浏览器和服务器之间请求和响应的格式与规则
 - HTTPS:在Http和Tcp之间加入SSL/TLS协议,对传输信息进行加密

  1. java数据结构
1、栈(Stack2、哈希表(Hashtable3、字典(Dictionary) map
4、属性(Properties5、枚举(Enumeration6、向量(Vector

8.sql语句

1、delete和drop的区别是:drop主要用于删除结构,delete主要用于删除数据。如果我们要删除
数据库或数据表,都会使用drop来删除
2、增加一列:alert table 表面 add 列名 数据类型

9.StringBuffer & StringBuilder

在使用 StringBuffer 类时,每次都会对 StringBuffer对象本身进行操作,而不是生成新的对象,所以
如果需要对字符串进行修改推荐使用 StringBufferStringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于StringBuilder 
的方法不是线程安全的(不能同步访问)。
由于StringBuilder相较于StringBuffer有速度优势,所以多数情况下建议使用 StringBuilder类。

10.常见HTTP状态码 :

1xx :
100 Continue
继续。客户端应继续其请求

2xx :
200 OK
请求已成功,请求所希望的响应头或数据体将随此响应返回。出现此状态码是表示正常状态。

204 No Content(无内容)
服务器成功处理,但未返回内容。在未更新网页的情况下,可确保浏览器继续显示当前文档。

206 Partial Content(部分内容)
服务器成功处理了部分GET请求。

3xx:
301 Moved Permanently(永久重定向)
请求的资源已被永久的移动到新URL,返回信息会包括新的URL,浏览器会自动定向到新URL。今后任何新的请求都应使用新的URI代替。

302 Found(临时重定向)
与301类似。但资源只是临时被移动。表示请求的资源被分配了新的URL,希望本次访问使用新的URL。

303 See Othe(查看其他地址)
当请求者应对不同的位置进行单独的 GET 请求以检索响应时,服务器会返回此代码。对于除 HEAD 请求之外的所有请求,服务器会自动转到其他位置。

304 Not Modified(未修改)
所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源。

305 Use Proxy(使用代理)
请求者只能使用代理访问请求的网页。如果服务器返回此响应,那么,服务器还会指明请求者应当使用的代理

307 Temporary Redire(临时重定向)
与303有着相同的含义,307会遵照浏览器标准不会从POST变成GET;(不同浏览器可能会出现不同的情况)。

4xx :
400 Bad Request (语法错误)
客户端请求的语法错误,服务器无法理解。

401 Unauthorized(未授权)
请求要求用户的身份认证

403 Forbidden(禁止)
服务器理解请求客户端的请求,但是拒绝执行此请求

404 Not Found(未找到)
服务器无法根据客户端的请求找到资源(网页)。除此之外,也可以在服务器拒绝请求但不想给拒绝原因时使用。

405 Method Not Allowed (方法禁用)
客户端请求中的方法被禁止。

406 Not Acceptable(不接受)
无法使用请求的内容特性来响应请求的网页。

408 Request Time-out(请求超时)
服务器等待客户端发送的请求时间过长,超时。

5xx
500Internal Server Error(服务器内部错误)
服务器遇到错误,无法完成请求。

501 Not Implemented(尚未实施)
服务器不具备完成请求的功能。例如,当服务器无法识别请求方法时,服务器可能会返回此代码。

502 Bad Gateway(错误网关)
作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应

503 Service Unavailable(服务不可用)
由于超载或系统维护,服务器暂时的无法处理客户端的请求。通常,这只是一种暂时的状态。

504 Gateway Time-out(网关超时)
服务器作为网关或代理,未及时从上游服务器接收请求。

505 HTTP Version not supported(HTTP 版本不受支持)
服务器不支持请求中所使用的 HTTP 协议版本。
————————————————
版权声明:本文为CSDN博主「大嘴猴�」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Kakarotto_/article/details/108201197
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值