美文网首页北京西路程序员
接口测试之01-基本概念

接口测试之01-基本概念

作者: 无以解忧杂货铺 | 来源:发表于2018-01-18 16:50 被阅读65次


    接口测试系列

    一、什么是接口?

    接口分两种:

    1、系统对外的接口:为了保护本系统的信息和数据的安全,要对外提供数据时,必须通过接口的形式来实现,别人找你的系统获取数据,肯定不能允许它直接读写我们的数据库,只能是通过它引用我们的接口,用我们写好的方法,获取到我们提供的数据(我们不想提供的绝对不能获取到),这样才能做到安全可靠,独立自主

    2、程序内部的接口:程序方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如OA系统,有登录模块、发起流程模块等等,那你要发起流程前提是要先登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统模块之间互相进行调用。

    二、常见的接口:

    1、WebServices接口:是通过soap协议通过http传输的,请求和返回的保温都是xml格式的,我们在测试的时候都通过工具来调用,测试,我用过的SoapUI专测这类接口报文,非常好用

    2、HTTP API接口:通过http协议,通过路径来区分调用方法,请求和保温都是key-value形式的,是json格式,有get和post、put、delete等方法,这类接口可以用postman等工具测试,都比较方便

    三、什么是接口测试?

    接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。所谓接口测试就是通过测试不同情况下的入参与之相应的出参信息来判断接口是否符合或满足相应的功能性、安全性要求。接口测试没有页面,它是通过接口规范文档上的调用地址、请求参数,拼接报文,然后发送请求,检查返回结果,所以它只需测入参和出参。

    四、什么是接口文档?

    接口文档是接口测试的依据,只有研发团队提供了接口文档,你才能顺利的开展接口测试,否则接口,参数,地址,返回值等全部不清楚的情况下,是无法做接口测试的,所以接口文档就是接口测试的需求文档

    1、接口说明

    2、调用的url地址

    3、请求方法(get or post)

    4、请求参数,参数的类型,参数的意义说明

    5、返回的参数,反馈参数的意义说明

    五、为什么要做接口测试?

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

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

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

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

    前端和后端都需要校验的内容,如果前端校验了,那么在功能测试时可以发现,但是后端是否校验,此时功能测试是不能发现的,只能通过接口测试的方式来验证,这样可以保证坏人不会绕过前端校验直接进入后端操作,提升系统的安全性,所以接口测试还是相当有必要的!

    六、接口测试的主流工具

    1、Postman

    2、SoapUI

    3、Jmeter(这不是性能测试工具吗?)

    4、LoadRunner(这不也是性能测试工具吗?)

    5、RESTClient等

    七、HTTP请求及状态码

    说到接口,不得不先说一下请求,有了接口,只有对接口请求时,才能发现其是否生效,有效,安全可靠,接口就是用来请求的!那么请求有以下几种:GET、POST、PUT、Delete等等,主要还使用前两个。

    GET和POST请求:如果是get请求的话,直接在浏览器里输入就行了,只要在浏览器里面直接能请求到的,都是get请求,如果是post的请求的话,就不行了,就得借助工具来发送。

    GET请求和POST请求的区别:

    1、GET使用URL或Cookie传参。而POST将数据放在BODY中。

    2、GET的URL会有长度上的限制,则POST的数据则可以非常大。

    3、POST比GET安全,因为数据在地址栏上不可见。

    4、一般get请求用来获取数据,post请求用来发送数据。

    有了请求,就有响应,说到响应,就要明确http的状态码,状态码就是来说明响应结果的意义的,每发出一个http请求之后,都会有一个响应,http本身会有一个状态码,来标示这个请求是否成功,常见的状态码有以下几种:

    1、200  2开头的都表示这个请求发送成功,最常见的就是200,就代表这个请求是ok的,服务器也返回了。

    2、300  3开头的代表重定向,最常见的是302,把这个请求重定向到别的地方了,

    3、400  400代表客户端发送的请求有语法错误,401代表访问的页面没有授权,403表示没有权限访问这个页面,404代表没有这个页面

    4、500 5开头的代表服务器有异常,500代表服务器内部异常,504代表服务器端超时,没返回结果

    八、接口测试用例设计原则

    1、通过性验证用例:按照正常的参数测试接口是否正常可用,返回值是否正常等,单个参数逐一验证

    2、通过性验证用例:按照正常的参数测试接口是否正常可用,返回值是否正常等,多个参数组合验证

    3、接口安全用例:绕过验证,修改服务端数据,是否成功,比如修改商品价格等操作的用例

    4、接口安全用例:绕过授权,比如买家修改卖家才有权限修改的信息

    5、接口安全用例:参数是否加密,不加密传输,加密传输,是否成功

    6、接口安全用例:密码的复杂度验证,通过不同的密码组合,来验证后端对密码的判断是否全面

    7、失败型验证用例:不按要求传参数,参数不完整,长度不正确,必传不传等等

    以上就是接口测试的基本知识,下一篇将开始介绍接口测试工具的实战用法


    作者码字辛苦,凡是读后有益者,请麻烦给个评价,点个喜欢,如果喜欢我的文章,请长期关注。2018年,长期更新。

    有兴趣沟通交流的可以加QQ群:222728298    


    相关文章

      网友评论

        本文标题:接口测试之01-基本概念

        本文链接:https://www.haomeiwen.com/subject/mvmuoxtx.html