首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
28 篇文章
1
一篇文章让你入门API测试
2
[接口测试 - 基础篇] 01 你应该了解的协议基础
3
[接口测试 - 基础篇] 02 你应该掌握的Python3接口测试内功
4
[接口测试 - 基础篇] 03 unittest测试框架了解多少才够?
5
[接口测试 - 基础篇] 04 无法绕过的json解析
6
[接口测试 - 基础篇] 05 好讨厌的xml解析
7
[接口测试 - 基础篇] 06 好吧也来解析下html
8
[接口测试 - 基础篇] 07 来来来,一起读写excel玩玩之一
9
[接口测试 - 基础篇] 08 封装个基本的excel解析类
10
[接口测试 - 基础篇] 09 其实吧,读写csv格式也是要掌握的
11
[接口测试 - 基础篇] 10 别啊,还有INI格式呢,别忘记我
12
[接口测试 - 基础篇] 11 掌握下python解析YAML格式也是需要的
13
[接口测试 - 基础篇] 12 还是要掌握python日志管理模块的
14
[接口测试 - 基础篇] 13 写在接口测试基础篇完结时
15
[接口测试 - http.client篇] 14 源码初探及其工作机制分析
16
[接口测试 - http.client篇] 15 常用API说明及基本的示例
17
[接口测试 - http.client篇] 16 基于http.client之POM实战一下
18
[接口测试 - http.client篇] 17 http.client之入门级接口测试框架
19
接口测试 | urllib篇 18 urllib介绍
20
接口测试 | urllib篇 19 urllib基本示例
21
[接口测试 -基础篇] 20 用flask写一个简单server用于接口测试
22
接口测试 | 21 基于flask弄个restful API服务出来
23
接口测试 | 22 requests基础入门
24
接口测试 23 requests基础入门二
25
接口测试 | 24 requests + unittest集成你的接口测试
26
接口测试 | 25 requests + pytest测试实例
27
接口测试 | 26 基础及简要验证清单
28
接口测试 | 27 HTTP接口详细验证清单

接口测试 | 26 基础及简要验证清单

## 什么是API

API(应用程序编程接口)可以被看作是软件系统、服务、组件之间进行通信的桥梁。它约束了通信的基本规则。

简单的说,API接收用户的输入,并返回响应内容。

## API测试

API测试是为了验证API的约束规则是否满足预期的规则。

## 为什么进行API测试

通常我们都是基于用户界面进行验证测试,以验证软件是否满足预期的需要。

如果我们的系统API不能够提供优势,那么不管应用程序的可用性如何,它都不会获得用户的认可,因为:

API负责处理用户的请求,其性能将直接影响用户的体验。

同样的,API的安全也是一个非常重要的方面,如果API很容易受到安全威胁,那么整个产品都可能受到影响,从而失去用户基础。

## 新手做API测试

作为一个从未或是初步涉及API级测试你来讲,在准备测试API前,必须考虑几个重要的问题:

1. 需要从哪几个方面进行测试

2. 选择最适合于API测试的环境

3. 最要的是确定API的目标受众

4. 设置测试的优先级

5. 做好可能发生的故障时的应对方案

6. 评估通过和失败的结果,并确定其对系统的影响度

一旦我们清楚的定义了什么我们的需求,我们就需要决定为什么要测试系统的API,它的服务的目的是什么?

在此基础上我们可能希望能够进行一些常见的测试,例如功能测试、可用性测试、可靠性测试、负载测试、安全测试、API文档测试等等

## API验证清单

在讨论了API测试和分析了其重要性后,我们简单的对API验证清单进行总结:

#### HTTP验证

在测试一个API时,应对HTTP方法的GET\POST\HEAD\PUT\DELETE等方法均应进行测试

验证用户身份验证时,尝试使用HTTP身份验证头来访问API

验证各种错误/认证码,以确保响应的是可验证的,一些验证代码包含 404(未找到服务器) 201(请求实现) 204(没有内容)等等

对于4xx和5xx错误是必须测试的,因为它们分别反应了客户端和服务器端的错误

为了确保API的最佳网络性能,必须将HTTP压缩机制应用到API测试中

#### API测试

API必须支持格式转换,例如json转换到xml、反之亦然

检查API版本号以验证特定版本是否兼容特定的设备、服务等等

验证API必须足够强大的支持批量操作能力

分页是一个非常强大的能力,而且能够减少服务不必要的计算,提升服务效率

API必须能够有效的处理服务运行期间的出现的错误

#### 内容

在验证API时,应该验证包括json、xml等格式的内容是否满足预期

当API为restful风格时,应对验证其是否满足restful风格机制、约束

API的日期和时间必须符合特定地区的时区规范

API的业务逻辑必须满足预期的机制

最后,安全是不可绕过的,其是决定API测试有效性的一个不可避免的因素。

## 小结

API测试既简单也复杂,有技术上的要求,更要求能把技术与测试的结合,以产生1+1大于2的效果,否则可能是一场无用功。

下一篇
举报
领券