接口测试笔试题

1.接口文档有哪些内容?

  1. 接口说明
  2. 调用URL
  3. 请求方式(get/post)
  4. 请求参数、参数类型、请求参数说明
  5. 返回参数说明

2.接口测试流程?

  1. 准备阶段(80%)

    拿到开发的接口文档,并理解每个接口的参数及含义
    了解被测试系统的业务流程
    编写接口测试用例

  2. 执行阶段

    测试用例/测试场景执行
    测试数据/系统数据收集

  3. 分析阶段

    数据汇总/日志分析
    测试报告

3.http1.0和http1.1的区别?

4.请求方式有哪些?

http1.0定义了三种请求方式:get,post和head方法

http1.1新增了五种请求方法:options,put,delete,trace和connect方法

请求方式 说明
get 请求指定的页面信息,并返回实体主体。
post 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。post请求可能会导致新的资源的建立和/或已有资源的修改
head 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
put 从客户端向服务器传送的数据取代指定的文档的内容
delete 请求服务器删除指定的页面
connect http1.1协议中预留给能够将连接改为管道方式的代理服务器
options 允许客户端查看服务器的性能
trace 回显服务器收到的请求,主要用于测试或诊断

5.tcp/ip iso网络7层都是有哪些?

应用层
表示层
会话层
传输层
网络层
数据链路层
物理层

6.响应状态码有哪些以及对应的原因?

200成功
301永久重定向
302临时重定向
403
404 找不到路径
405
500服务器内部错误

7.三次握手和4次挥手是如何实现的,简单说下你的理解

握手的过程:

第一次握手:客户端给服务器端发送一个SYN报文;
第二次握手:服务器收到SYN报文之后,会应答一个SYN+ACK报文。
第三次握手:客户端收到SYN+ACK报文之后,会回应一个ACK报文。
服务器收到ACK报文之后,三次握手建立完成。

四次挥手的过程:


图片.png

8.cookie和session和token的区别

cookie与session的区别

1、cookie数据存放在客户端上,session数据放在服务器上。
2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
考虑到安全应当使用session。
3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
考虑到减轻服务器性能方面,应当使用COOKIE。
4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
5、所以个人建议:
将登陆信息等重要信息存放为SESSION
其他信息如果需要保留,可以放在COOKIE中

session与token的区别

session 和 oauth token并不矛盾,作为身份认证 token安全性比session好,因为每个请求都有签名还能防止监听以及重放攻击,而session就必须靠链路层来保障通讯安全了。如上所说,如果你需要实现有状态的会话,仍然可以增加session来在服务器端保存一些状态

App通常用restful api跟server打交道。Rest是stateless的,也就是app不需要像browser那样用cookie来保存session,因此用session token来标示自己就够了,session/state由api server的逻辑处理。 如果你的后端不是stateless的rest api, 那么你可能需要在app里保存session.可以在app里嵌入webkit,用一个隐藏的browser来管理cookie session.

Session 是一种HTTP存储机制,目的是为无状态的HTTP提供的持久机制。所谓Session 认证只是简单的把User 信息存储到Session 里,因为SID 的不可预测性,暂且认为是安全的。这是一种认证手段。 而Token ,如果指的是OAuth Token 或类似的机制的话,提供的是 认证 和 授权 ,认证是针对用户,授权是针对App 。其目的是让 某App有权利访问 某用户 的信息。这里的 Token是唯一的。不可以转移到其它 App上,也不可以转到其它 用户 上。 转过来说Session 。Session只提供一种简单的认证,即有此 SID,即认为有此 User的全部权利。是需要严格保密的,这个数据应该只保存在站方,不应该共享给其它网站或者第三方App。 所以简单来说,如果你的用户数据可能需要和第三方共享,或者允许第三方调用 API 接口,用 Token 。如果永远只是自己的网站,自己的 App,用什么就无所谓了。

你可能感兴趣的:(接口测试笔试题)