栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

接口测试基础

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

接口测试基础

一、接口

接口概念:指的是系统或组件之间的交互点,通过这些交互点可以实现数据的交互(数据交互的通道)

接口分类:硬件接口与软件接口,作为测试工程师,更多关注软件层面的接口

接口是最小的质量保证网

软件测试常常会问到这样的问题:已经有了功能测试,为什么还要进行接口测试?

比如测试用户注册功能,规定用户名为6~18个字符,包含字母(区分大小写)、数字、下划线。首先功能测试时肯定会对用户名规则进行测试时,比如输入20个字符、输入特殊字符等,但这些可能只是在前端做了校验,后端可能没做校验,如果有人通过抓包绕过前端校验直接发送到后端怎么办呢?试想一下,如果用户名和密码未在后端做校验,而有人又绕过前端校验的话,那用户名和密码不就可以随便输了吗?如果是登录可能会通过SQL注入等手段来随意登录,甚至可以获取管理员权限,那这样不是很恐怖?

所以,接口测试的必要性就体现出来了:

①、可以发现很多在页面上操作发现不了的bug

②、检查系统的异常处理能力

③、检查系统的安全性、稳定性

④、前端随便变,接口测好了,后端不用变

二、接口测试

接口测试:是对系统或组件之间的接口进行测试,主要是校验数据的交换、传递和控制管理过程,以及相互逻辑依赖关系。

原理:

复习Django请求生命周期:

http请求首先到达wsgi服务器,解析封装为request对象, 交给web框架处理

在框架中,中间件对请求进行进一步处理(例如:csrf、session、路由匹配)

然后进行路由匹配, 执行不同的视图函数,可能涉及到数据库操作,模版渲染等

最后将结果传递到中间件, 封装为response响应对象

最后wsgi服务器将响应对象转换为http报文,返回给浏览器

模拟客户端向服务器发送请求,服务器接收后进行响应的业务处理,并向客户端返回响应数据,检查响应数据是否符合预期。

特点:

 

实现方式:

1、使用接口测试工具来实现(比如:JMeter、Postman)

接口测试的本质就是通过向接口发送请求,查看响应是否正确,现阶段主要以postman工具来实现接口测试,JMeter会在后续的性能测试中重点讲解。

2、通过编写代码来实现(比如:python+requests)

接口测试的另一种方式就是通过代码实现,由于本质就是向接口发送请求,同样可以使用代码实现,并且代码相比工具实现起来更加灵活,但要求测试人员具有一定的coding能力。 

自动化:

测试分类:

按照是否自动化进行测试分类,可以分为:手工测试、自动化测试

接口自动化测试:针对接口进行测试,用工具或代码代替人进行测试的一种活动

 

三、网络协议

常见的网络协议:http、https

TCP(传输控制协议)、UDP(用户数据报协议)  

FTP(文件传输协议)、SFTP

SSH(远程登录协议)

http协议

http协议,(HyperText Transfer Protocol)超文本传输协议,是一个基于请求与响应模式的、应用层的协议,也是互联网上应用最为广泛的一种网络协议。

特点:

1、支持客户端/服务器模式;

2、简单快捷:快速传输,http协议比HTTPS协议更加高效(https协议比HTTP协议更加安全);

3、灵活;

4、无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接;

5、无状态:协议对于事务处理没有记忆能力,对同一个url请求没有上下文关系,每次的请求都是独立的,它的执行情况和结果与前面的请求和之后的请求是无直接关系的,它不会受前面的请求应答情况直接影响,也不会直接影响后面的请求应答情况。

URL:

URL(Uniform Resource Locator)统一资源定位符,是互联网上标准资源的地址。HTTP使用URL来建立连接和传输数据。

URL格式:

四、请求与响应

http请求由三部分组成:请求行、请求头、请求体

 

请求需要掌握:

 

 http响应由三部分组成:状态行、响应头、响应体

响应头:用于描述服务器的基本信息,以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理响应数据

响应体:就是响应的消息体,数据可以是普通文本、XML、JSON、 HTML源码

 

五、RESTful接口规范

概念:RESTful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。

REST:即(Representational State Transfer)的缩写,词组翻译为“表现层状态转化”,如果一个架构符合REST原则,就称它为RESTful架构。

RESTful接口风格:

 RESTful接口特点:

六、接口测试流程

 

 

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/295837.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号