接口测试

接口测试

  分类:

  serverAPI    httpApi


B/S和C/S的区别?(面试题)

  CS响应速度快,安全性强,用户体验好,一般应用于局域网中,但是开发维护成本高,;

  BS可以实现跨平台,客户端零维护,但是个性化能力低,响应速度较慢


http/https 的区别?(面试题)

一、传输信息安全性不同

1、http协议:是超文本传输协议,信息是明文传输。如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息。

2、https协议:是具有安全性的ssl加密传输协议,为浏览器和服务器之间的通信加密,确保数据传输的安全。

二、连接方式不同

1、http协议:http的连接很简单,是无状态的。

2、https协议:是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议。

三、端口不同

1、http协议:使用的端口是80。

2、https协议:使用的端口是443.

四、证书申请方式不同

1、http协议:免费申请。

2、https协议:需要到ca申请证书,一般免费证书很少,需要交费。

https里的s  就是    ss协议

例如:http://127.0.0.1:8080/jinrongcrm/login.jsp?name="admin"&pwd="123"

url地址有哪些组成?

  协议  http/https 

  端口号:http/https  80 443

  请求方式 get

  参数name pwd

  参数值  admin 123

  域名部分

  虚拟目录部分

  文件名


http的请求有哪些:  GET, POST  HEAD  OPTIONS, PUT, DELETE, TRACE 和 CONNECT

GET      请求指定的页面信息,并返回实体主体。

HEAD    类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头

POST    向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。

数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。

PUT    从客户端向服务器传送的数据取代指定的文档的内容。

DELETE  请求服务器删除指定的页面。

CONNECT  HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

OPTIONS  允许客户端查看服务器的性能。

TRACE    回显服务器收到的请求,主要用于测试或诊断。


get和post的区别?(面试题)

1.Get是不安全的,因为在传输过程,数据被放在请求的url中;POST的所有操作对用户来说都是不可见的。

2. Get传送的数据量较小,这主要是因为受URL长度限制;Post传送的数据量较大,一般被默认为不受限制。

 3. Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。

 4. Get执行效率却比Post方法好。Get是form提交的默认方法。

接口测试_第1张图片

request:

请求行(request line)、请求头部(header)、空行和请求数据四个部分组成。

response

响应行 响应报头、空行和响应正文。


服务器的响应状态码:(面试题)

https://blog.csdn.net/alice_tl/article/details/87186772

接口测试_第2张图片

常见状态码&含义

        200 - 请求成功,已经正常处理完毕

        301 - 请求永久重定向,转移到其它URL

        302 - 请求临时重定向

        304 - 请求被重定向到客户端本地缓存

        400 - 客户端请求存在语法错误

        401 - 客户端请求没有经过授权

        403 - 客户端的请求被服务器拒绝,一般为客户端没有访问权限

        404 - 客户端请求的URL在服务端不存在

        500 - 服务端永久错误


Session    cookie 的区别?(面试题)

Cookie是把数据保存在浏览器端的内存中

Session把数据保存在服务器端的内存中

cookie与session的联系:

1、Cookie仅由客户端生成、管理并使用,PHP只是发出指令要求客户端如何生成Cookie、何时过期等,但是客户端不一定会按照PHP的指令办事。

2、如果没有设置Cookie过期时间,Cookie会一直以文件或SQLit等DB形式存在客户端磁盘。

3、Session是用户进入某个网站到关闭浏览器这段时间的会话,默认以文件形式存在服务器磁盘,所以设置过多的Session会影响磁盘IO,也可以用Memory引擎存入MySQL,因为内存引擎读写速度快,现在也可以指定用Redis来处理Session,这样更快,效率更高。

4、Session的收回机制是被动的,shenzhen.offcn.com如果设置了生存周期,一般来说,一旦关闭浏览器Session也就被PHP自动回收了,但有时即使设置了过期时间并且关闭浏览器并不一定会删除Session,比如设置多目录多层级保存Session时,这时需要通过PHP脚本手动删除Session。

5、通常Cookie与Session是绑定的,即用户在没有禁用Cookie时,Cookie一般会保存sessionID及Session生存周期,如果用户删除Cookie一般会退出系统;如果没有禁用Cookie关闭浏览器Session也会立即失效,要重新登录系统。

6、Cookie与Session一般应于标识用户、权限认证、存储简单数据、还有就是利用P3P实现Cookie跨域单点登录(SSO:Single Sign On)。


测试报告:1.功能性测试报告  【测试报告】

                   2.接口测试报告    【测试报告】


接口测试用例编写

接口测试_第3张图片

为什么使用json

FasterJSON

Gson

Json


Json传输数据效率更高,所以部分场景下使用HTML与XML

但是JSON语言描述不及标签语言,所以部分场景下使用HTML与XML

如果传递少量数据,使用JSON


常见接口测试工具

• 典型商业工具:loadrunner,soapui

• 典型开源工具: jmeter

• 扩展插件:POSTMAN


实现原理

• 模拟客户端对服务器进行多连接

单接口测试:1.测试接口通不通

                      2.多场景接口测试

                      3.对接口进行压力测试    [多次请求实现并发]

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