接口:API(Application Programming Interface)即应用程序接口。你可以认为API是一个软件组件,或是一个Web服务与外界进行交互的接口。

1.从功能层面上

可以将接口简单理解为一个盒子。其上游负责输入参数,下游负责输出参数,类似于平时的黑盒测试对象,如图1-1

图1-1

例:

(1)在Chrome浏览器中输入:https://www.v2ex.com/api/nodes/show.json?name=Python,按“Enter”键之后能看到如图1-2所示的数据。

图1-2

下面来分析这个过程:

在输入URL地址并按Enter键后,页面实际发送了一次请求接口。具体的要求是:接口地址(https://www.v2ex.com/api/nodes/show.json?)+ 请求参数及其值(name=Python)。后面这个“name=Python”就是输入数据;返回的数据就是浏览器展示的一个JSON格式数据。至于这个数据是怎么来的,目前还是看不到的。所以这就像黑盒子一样,输入不同的数据会得到不同的返回结果。

*JSON(JavaScript Object Notation):是一种轻量级的数据交换格式,独立于语言和平台。JSON解释器和JSON库支持不同的编程语言,是以{ }括起来的键值对数据。

JSON数据格式如下:

{“name”:“Michael","age":24}

2.从数据流层面来说

可以将接口理解为连接前端(Web页面、APP等)和数据库(Database)等后端的纽带,用于二者之间传递数据、处理数据,如图2-1

当下大部分的互联网产品都采用前/后端分离的方式,即前端的表示层负责展示数据及其样式,后端的数据层负责数据处理和存储如图2-2

(1)前端(前台):可以直观看到和使用的内容都可以被视为前端。比如,Web页面上一些可见的、可操作的界面。

(2)后端:不能被用户可见的内容。其实,后端是一个编程上的概念,具体是指业务逻辑和数据处理。

(3)后台:通俗意义上是指管理系统,主要用来增加、删除、修改、查询数据,实际上是内部人士使用的一个Web系统。

3.从编程层面来说

可以将接口理解为业务逻辑处理方法的外在表现形式,如图3-1,它可以是一个类,也可以是一个函数。

从数据流层面来理解,接口会按照“业务逻辑”处理数据。函数或方法按照逻辑返回不同的数据,这便是接口在不同参数下的不同返回信息。所以从“白盒操作”角度来看,接口测试是直接对函数或方法的代码层进行测试。

Python接口自动化测试(一)什么是接口?的更多相关文章

  1. python web自动化测试框架搭建(功能&接口)——接口用例实现

    测试用例基类: # coding=utf-8 import unittest import Logger log = Logger.Loger() class BaseCase(unittest.Te ...

  2. python web自动化测试框架搭建(功能&接口)——接口公共方法

    接口公共方法有:数据引擎.http引擎.Excel引擎 1.数据引擎:获取用例.结果检查.结果统计 # -*- coding:utf-8 -*- from XlsEngine import XlsEn ...

  3. python web自动化测试框架搭建(功能&接口)——接口测试模块

    Python接口测试采用python读取excel的方法,通过requests库发送请求和接收响应.模块有: Data:用于存放excel用例的,用例格式: iutil: 接口公共方法,数据引擎.ht ...

  4. python web自动化测试框架搭建(功能&接口)——功能测试模块

    功能测试使用selenium,模块有: 1.futil: 公共方法,如元素高亮显示 # coding=utf-8 """高亮显示元素""" ...

  5. python web自动化测试框架搭建(功能&接口)——测试用例执行和结果收集

    由于unittest框架中结果收集在不同文件中,所以此处重写结果收集方法,加入执行时间,失败信息,失败截图等 TestRunner.py # coding=utf-8 import sys impor ...

  6. python web自动化测试框架搭建(功能&接口)——通用模块

    1.通用模块: config.conf: 公共配置文件,配置报告.日志.截图路径,以及邮件相关配置 [report] reportpath = E:\workspace\WebAutomation\s ...

  7. Python web自动化测试框架搭建(功能&接口)——unittest介绍

    Python UnitTest测试框架介绍 1)         TestCase:所有测试用例类继承的基本类, TestCase的实例就是测试用例 2)         TestSuite:测试套件 ...

  8. python web自动化测试框架搭建(功能&接口)——环境搭建

    自动化测试框架一般需要实现以下通用功能 执行前准备 结束后清理 执行步骤输出 执行结果输出 错误.失败截图 测试报告 发送邮件 日志 需要的软件和python第三方库有: 通用: JDK Eclips ...

  9. 【三】Jmeter接口自动化测试系列之Http接口自动化实战

    作者:大虫 本文介绍 Jmeter 工具的 http 接口 自动化测试 实战! 为了通用性,就拿知乎 网站作为实战例子吧! 必备技能:http接口基础知识.抓包,本文不做详细介绍,不会的可以先百度恶补 ...

  10. 接口自动化测试持续集成--Soapui接口功能测试参数化

    按照自动化测试分层实现的原理,每一层的脚本实现都要进行参数化,自动化的目标就是要实现脚本代码与测试数据分离. 当测试数据进行调整的时候不会对脚本的实现带来震荡,从而提高脚本的稳定性与灵活度,降低脚本的 ...

随机推荐

  1. SQL查看数据库中每张表的数据量和总数据量

    查看所有表对应的数据量 SELECT a.name AS 表名, MAX(b.rows) AS 记录条数 FROM sys.sysobjects AS a INNER JOIN sys.sysinde ...

  2. SQL 多并发 多人取号,防止重复取号SQL 办法

    BEGIN TRAN         SELECT  *  from 表明 WITH(HOLDLOCK)        UPDATE 表名 SET 值=1 WHERE 字段=@carrierNo;   ...

  3. 8. Java的运算符

    计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量. 我们把运算符具体分为:算数运算符,比较运算符,逻辑运算符,位运算符,赋值运算符,条件运算符,i ...

  4. Git撤回已经推送(push)至远程仓库提交(commit)的版本

    背景 所以,经常会遇到已经提交远程仓库,但是又不是我想要的版本,要撤下来. 回退版本一般使用git reset,又分为: # 不删除工作空间改动代码,撤销commit,不撤销git add . git ...

  5. 【转载】C#通过IndexOf方法判断某个字符串是否包含在另一个字符串中

    C#开发过程中针对字符串String类型的操作是常见操作,有时候需要判断某个字符串是否包含在另一个字符串,此时可以使用IndexOf方法以及Contain方法来实现此功能,Contain方法返回Tru ...

  6. 【转】SpringCloud学习笔记(一)——基础

    什么是微服务架构 简单地说,微服务是系统架构上的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进 ...

  7. 攻防世界(Ctf-Web 新手练习区 Writeup)

    平台地址:adworld.xctf.org.cn 在打着暑假工赚零花钱之余,我将这些题利用空余时间刷了一遍,感觉内心还是比较满足的! 题目:view_source 这道题没啥好说的,在url的前面加上 ...

  8. iOS动画:CAKeyframeAnimation

    网络中Core Animation类的继承关系图       属性简介 @interface CAKeyframeAnimation : CAPropertyAnimation /* 提供关键帧数据的 ...

  9. python 元类理解

    原文来自:https://segmentfault.com/a/1190000011447445 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生万物 我是谁?我从哪来里?我要到哪里去? ...

  10. nn.Conv2d 参数及输入输出详解

    Torch.nn.Conv2d(in_channels,out_channels,kernel_size,stride=1,padding=0,dilation=1,groups=1,bias=Tru ...