初始接口测试01
什么是接口
接口全称为应用程序编程接口(Application Programming apitest),简称API
接口本质上是程序开发的函数或方法,完成一定功能的代码集合。
接口测试就是针对这些函数功能进行的测试,除此之外,也包括接口性能、安全性等方面的测试。
接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被内部修改而不影响外界其他实体与其交互的方式。
人类与电脑等信息机器或人类与程序之间的接口称为用户界面。
电脑等信息机器硬件组件间的接口叫硬件接口。
电脑等信息机器软件组件间的接口叫软件接口。
在计算机中,接口是计算机系统中两个独立的部件进行信息交换的共享边界。
这种交换可以发生在计算机软、硬件,外部设备或进行操作的人之间,也可以是它们的结合。
接口的优势
规范性
接口就是规范,在整个系统设计中,涉及到很多层,为了使各个层之间调用透明话,你只需要知道接口,按照这个接口做你具体做的事情,就可以融合到整个系统中了。
例如:插头、插座,有标准的规范告诉你插头应该是几个脚,插座是几个孔等等,做插头、插座的公司就是根据这个规范来做插头、插座,而不需要做完一个插头就跑遍全世界去试用一下这个插头做的对不对。
扩展性
在项目开发过程中,由于客户的需求经常变化,如果不采用接口,那么我们必须不停改写现有的业务代码。改写代码可能产生新的BUG,而且改写代码还会影响到调用该业务的类,可能全都需要修改,影响系统本身的稳定性。到最后,可能会出现代码凌乱,不易读懂,后接手的人无法读懂代码,系统的维护工作越来越重,最终可能导致项目失败。接口在项目就是一个业务逻辑,面向接口编程就是先把客户的业务提取出来,作为接口。业务具体实现通过该接口的实现类来完成。当客户需求变化时,只需编写该业务逻辑的新的实现类,不需要改写现有代码,减少对系统的影响。从而让项目具有更大的扩展性。
常见的接口类型
接口是指外部系统与系统之间以及内部各子系统之间的交互点。包括外部接口、内部接口
内部接口又包括:上层服务与下层服务接口、同级接口
常见web接口,一类是http协议的接口,另一类是web service接口(如soup、rmi、rpc协议)
程序的接口 API
Application Programming apitest 应用编程接口
接口本质上是程序开发的函数或方法,提供参数和返回值
定义函数:函数名、参数表、返回值
例如:定义一个add函数,实现加法运算,最后返回运算结果
def add(a, b): 接口可以接收使用者提供的数据 c=a+b 对这些数据进行处理,实现预定的功能 return c 将结果返回给使用者
调用函数:使用函数名,传入参数,返回结果
add(1, 2);结果为3
add(3, 5);结果为8
整体演示:
""" 定义函数: 三要素:函数名、参数表、返回值 调用函数: 使用函数名,传入参数,返回结果 要求:定义一个add函数,实现加法运算,最后返回运算结果 """ # 定义函数 add,a,b为形参(参数表) def add(a, b): c = a + b # c 为函数返回值 return c # 调用函数 print(add(1, 2)) print(add(3, 5))
什么是接口测试
接口测试是测试系统组件间接口的一种测试。
接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。
测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
测试接口,就是指测试接口的功能、性能、稳定性和安全性测试
接口有内部接口和外部接口。
内部接口就是开发人员自己开发的接口。
外部接口好比网站调用微信支付和支付宝支付接口。
为什么要做接口测试
市场很多系统前后端架构是分离的,因为前后端的工作进度不一样,所以我们要针对最开始出来的接口以及需要调用其他公司的一些接口进行接口测试及验证数据
安全层面来说,只依赖前段进行限制已经完全不能满足系统的安全要求,需要后端同样进行控制,在这种情况下就需要从接口层面进行验证。前后端传输、日志打印等信息是否加密传输也是需要验证的,特别是涉及到用户的隐私信息,如身份证、银行卡等
如今系统越来越复杂,传统的靠前端测试已经大大降低了效率,而且现在我们推崇测试前移也叫测试左移,希望测试能够更早的介入测试,那接口测试就是一种尽早介入的方式。
例如传统测试,需要等待前后端都完成你才能进行测试,才能进行自动化代码编写。
而如果是接口测试,只需要前后端定义好接口,那这时自动化就可以介入编写接口自动化测试代码
测试左移
测试左移就是在提测之前已经介入了测试。在需求评审时不只是了解需求,更是要去评估需求的质量,分析需求的合理性以及完整性。在开发阶段时也要参与设计方案的设计,了解开发的实现方式。因为很多开发可能只对他负责的那一块熟悉,作为测试需要评估改动范围以及是否有遗漏的模块和系统。测试还可以通过提供测试案例或者自动化测试脚本的方式给开发,让开发在设计时考虑地更全面,于提高产品质量,毕竟越早发现问题,解决的成本就越低。
本文来自博客园,作者:暄总-tester,转载请注明原文链接:https://www.cnblogs.com/sean-test/p/14709189.html

浙公网安备 33010602011771号