接口测试常用测试点
Posted fireporsche
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口测试常用测试点相关的知识,希望对你有一定的参考价值。
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
测试的策略:
接口测试也是属于功能测试,所以跟我们以往的功能测试流程并没有太大区别,测试流程依旧是:
-
测试接口文档(需求文档)
-
根据接口文档编写测试用例(用例编写完全可以按照以往规则来编写,例如等价类划分,边界值等设计方法)
-
执行测试,查看不同的参数请求,接口的返回的数据是否达到预期
那么我们具体来看看接口测试主要有哪些测试点呢?
功能测试:
-
json格式测试: 通常我们的接口一般设计的都是传递json串,那么就需要去测试 如果传递非json的情况,这时候程序会不会正确的处理,返回相应的 error code
-
默认值测试: 很多情况一些非必填的参数会有默认值,比如说一个查询的接口,参数count为返回查询的结果数量, 默认为10,那么就应该有一条case来测试,当然前置条件是数据库里面必须要存在这样的数据超过10条。
-
异常类型测试: 比如上面的count参数,这个参数的类型一定是可以转换为int类型的,这时候我们需要测试如果传的一些不可以 转换为int类型值来测试代码是否加入判断
-
必传项测试: 如果接口的参数有必传项,那么需要测试在不传这个参数的时候接口返回情况,测试是否会提示 相应的error code
-
非必传项测试: 如果接口有非必填项,当我不传递这些参数的时候会不会正常的返回相应的结果
-
非空测试: 无论是必传的和非必传的参数,传递的key是正确的,但是value=null,这时候返回结果是否正确
-
业务逻辑测试: 传递正确的参数,接口对数据库进行查询的操作,需要去验证数据库查询是否正确,接口对数据库进行 增删改的操作,也需要看数据库是否同步进行了这些操作
-
兼容性测试: 比如说今天接口进行了调整,但是前端没有进行变更,这时候需要验证新的接口是否满足旧的调用方式
-
错误码测试: 通用的错误码与业务错误码是否能够清晰的说明调用问题,错误码是否能够尽可能的全的覆盖所有的情况
-
数据异常测试: 假如数据库设计为32位varchar类型,那么如果传33位会是什么情况,会不会抛出相应的错误码,而不会抛出数据库异常
-
返回值测试: 返回值除了内容需要是正确的,还需要类型也是正确的,保证调用方拿到这些参数能够正确的解析
- 参数边界值、等价类测试
性能测试:
-
响应时间
-
吞吐量
-
并发用户数
- 占用内存,CPU等
安全性测试:
-
敏感信息是否加密
-
必要参数是否后端校验(现在很多系统前后端架构是分离的,从安全层面来说,只依赖前端进行限制已经完全不能满足系统的安全要求(绕过前端太容易了), 需要后端同样进行控制,在这种情况下就需要从接口层面进行验证)
-
接口是否防恶意请求(SQL注入)
以上是关于接口测试常用测试点的主要内容,如果未能解决你的问题,请参考以下文章