接口自动化

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

             接口的由来:连接前后端及移动端,不同端的工作进度不一样,需要对最开始出来的接口进行接口测试。

      节约时间,缩短项目时间;

      提高工作效率;

      提高系统的健壮性。

二、什么是接口测试?

         含义:接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及 系统间的相互逻辑依赖关系等。

   接口的种类:{  外部接口、内部接口  } 

  http接口的分类?

           http

post   get  delete  put 

   http不同接口类型的差异?

参数提交方式;

请求数据大小;

安全性。

三、接口测试流程?

      需求讨论 →需求评审 → 根据开发接口文档进行场景设计 → 用例设计→用例评审 →执行测试 →测试报告

    为什么要设计测试用例?

       理清思路,避免漏测;

       提高测试效率;

       跟进测试进度;

       告诉领导做过;

       跟进重复性工作。

 

如何设计接口测试用例,哪几点考虑?根据开发接口文档

       功能  逻辑业务  异常  安全

        

四、接口测试工具?目的提高工作效率。

      如何选择接口测试工具:时间;简易程度;业务复杂度;测试人员能力来考虑选择。

      接口测试工具分类:抓取接口工具;测试接口工具。

 Δfiddler    同类工具有:httpwatch, wireshark,charles等

 Δpostman   为了更充分的利用Postman的功能,我们一般还会安装Postman Interceptor插件。

 Δwireshark

 Δsoapui

 Δpython、php(接口自动化)

 Δloadrunner(接口性能)

 Δhttprequester

 ΔjMeter(接口性能)

 

HttpWatch的缺点:只能是在IE和Firefox浏览器里面,其他浏览器不支持,看数据比较麻烦。

Wireshark

Fiddler:经常使用,是抓包工具的不二选择,还有其他功能

Loadrunner:功能强大,可以做接口测试(涉及两个函数)和性能测试

SoapUI:做接口测试和自动化测试

JMeter:做接口测试和性能测试

Postman:做接口测试工具不二选择

五、接口测试测什么?
1.单一接口的测试:接口的输入输出,数据合法性,异常处理
2.多接口组合测试:业务逻辑,业务场景
3. 结构检查
(1)​检查返回值的结构是否正确,如是json类型还是xml类型的数据
(2)字段名称是否正确​等
 
六、接口测试的重要依据
包括:接口说明、调用url、请求方法(getpost)、请求参数,参数类型,参数说明,返回参数说明.
 
七.通用接口用例设计
 
1.通过性验证:首先肯定要保证这个接口功能是好使的,也就是正常的通过性测试,按照接口上的参数,正常传入,是否可以返回正确的结果。
2.参数组合:现在有一个操作商品的接口,有个字段type,传1的时候代表修改商品,商品id、商品名称和价格有一个是必传的,这时候就要参数组合了。
3.接口安全
(1)绕过验证,比如购买了一个商品,它的价格是300元,那我在提交订单的时候,我把这个商品的价格改成-3元,后端如果没有做验证,那是不是我的余额还要增加?
 
(2)绕过身份权限,比如修改商品信息的接口,那必须得是卖家才能修改,那我传一个普通用户,能不能修改成功,我传一个其他卖家能不能成功?
 
(3)参数是否加密,比如说登录接口,用户名和密码是不是加密,如果不加密,别人拦截你的请求,就能获取到你的信息了,加密规则是否容易破解
 
(4)密码安全规则,密码的复杂程度校验
 
(5)异常验证:异常的,也就是我不按照你接口文档上的要求输入参数,来验证接口对异常情况的校验,必传非必传,参数类型,入参长度。
 4.根据业务逻辑设计用例
    列出测试点,造数据测试对应测试点
 
 
八.接口测试用例模板
 
项目,模块,用例id,接口名称,用例标题,请求方式,请求url,请求参数,前置条件,结果验证,请求报文,返回报文,测试结果,测试人员
 
 
九、为什么要自己开发接口测试程序?

1、工具没法满足需求时

2、业务限制

3、安全性

十、接口测试工具三剑客

Fiddler、Postman和Python自己开发

  

 

原文地址:https://www.cnblogs.com/linxiu-0925/p/9195791.html