4.接口测试的测试重点是什么(如何设计接口测试用例—接口用例设计方法)

一、功能测试(如何做接口测试):

· 接口的功能所有的操作场景是否正确实现了

· 参数边界值、等价类测试、 json格式测试:通常我们的接口一般设计的都是传递json串,那么就需要去测试如果传递非json的情况,这时候程序会不会正确的处理,返回相应的 error code

· 默认值测试:很多情况一些非必填的参数会有默认值,比如说一个查询的接口,参数count为返回查询的结果数量,默认为10,那么就应该有一条case来测试,当然前置条件是数据库里面必须要存在这样的数据超过10条。

· 错误码测试:通用的错误码与业务错误码是否能够清晰的说明调用问题,错误码是否能够尽可能的全的覆盖所有的情况

· 返回值测试:返回值除了内容需要是正确的,还需要类型也是正确的,保证调用方拿到这些参数能够正确的解析

二、逻辑业务(从哪些方面设计接口用例—场景法)

· 是否有依赖业务,比如查看订单,是需要用户首先登录的,所以肯定要保证登录了或有相应的cookie

· 业务逻辑测试:传递正确的参数,接口对数据库进行查询的操作,需要去验证数据库查询是否正确,接口对数据库进行增删改的操作,也需要看数据库是否同步进行了这些操作

三、异常测试(从哪些方面设计接口用例—无效等价类)

异常分为两类,参数异常和数据异常

1、参数异常:

· 关键字参数:将参数写为开发语言中的关键字

· 参数为空:比如去掉了username参数

· 多或少参数:多或者少参数的验证,现在还不确定如果一个接口多了参数如果没有报错是否是合理的,或者是否需要优化,因为就目前开发给予的答案是,一般不对接口多了参数的处理

· 错误参数:比如将username参数写为了user等看是否能返回相应的error code

2、数据异常:

· 关键字数据:将参数的值填为开发语言中的关键字NULL,default

· 数据为空:将参数的额值填为空

· 长度不一致:因为数据库中每个字段都设置有字段长度,填写不符合的长度进行验证

· 错误数据:就是将参数的值任意填写,或填写不存在的数值

· 异常类型测试:比如count参数,这个参数的类型一定是可以转换为int类型的,这时候我们需要测试如果传的一些不可以转换为int类型值来测试代码是否加入判断