接口

什么是接口

在XX公司有两个项目,《员工信息管理系统-信管》、《员工考勤管理系统-考管》,其中信管系统中保存中公司所有员工信息,包括:ID,姓名,年龄,入职时间,职位等信息。而考管系统正在开发中,考管系统要用到信管系统中的员工信息,那么怎么样才能拿到信息呢?

将信管系统中的数据库拷贝到考管中一份。

a) 不好维护,员工有变动不能第一时间通知考管系统
b) 需要了解数据结构,不然不能对数据库中数据进行操作。
考管系统直接连接信管的数据库
a) 需要了解数据结构,不然不能对数据库中数据进行操作。
在信管系统中写一个接口,接收信管发送过来的请求,处理后返回相关信息。
a) 不需要维护新的数据库,不需要了解数据结构,只需要了解这个接口的参数即可。
  前两种就不介绍了,第三种方法,添加了一个接口,降低开发成本,和运维成本,完
成考管系统对员工信息的需求。

那么接口是什么:

接口就是内部模块对模块,外部系统对其他服务提供的一种可调用或者连接的能力的标准。就好比信管系统对考管系统提供的接口服务,他是系统向外接提供的一种用于数据传输的一个服务,只要满足接口定义协议,就能调用接口,实现数据传输功能。

接口的分类:

外部接口: 一个程序对给另一个程序的服务。
内部接口: 一个程序中一个接口需要另一个接口提供的数据。

http协议请求方法介绍:

常见的接口分类http:get,post,delete,put 等等。但是呢,我我做的接口测试 还真的就用过一个请求方法,就是 POST 方式提交的JSON数据。

系统对外的接口:

比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。

程序内部的接口:

方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如bbs系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。

接口分类:

web service 接口

webService接口是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。

http api接口

http api接口是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。

GET和POST的区别
  1. Get是不安全的,因为在传输过程,数据被放在请求的URL中;Post的所有操作对用户来说都是不
    可见的。
  2. Get传送的数据量较小,这主要是因为受URL长度限制;Post传送的数据量较大,一般被默认为不
    受限制。
  3. Get执行效率却比Post方法好。Get是form提交的默认方法。
JSON是什么?

JSON是一种通用的数据类型。JSON的本质是字符串,可以转换为Python中的字典类型key-value的形式。

接口API与SDK介绍

API是接口的一种,在程序交互中具有重要的作用。
而SDK与API有着密不可分的关系。
总的来说,两者没有值得比较的区别,因为是具有关联性的两种东西。

API的概念
定义

API(Application Programming Interface)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。
也可以理解为是两个应用程序之间通信的机制,或者使用一组规则和协议的组件或计算机硬件。

目的

提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源代码,或理解内部工作机制的细节。

使用的地方

API被编写并使用在以下几个地方:
基于web的应用程序
电脑操作系统
数据库系统
计算机硬件
软件库
上面是很广义的API的概念,包含了硬件和软件,但我们常说的API其实是很狭义的Web Service或者说 Web API。

人和程序交互的叫做UI(user interface),所有人输入的包括鼠标键盘触摸屏声音输入都算。
程序和程序交互叫做API,所有非人对非人交互都通过API进行传递数据,触发功能。

SDK的概念

SDK即“软体开发工具包”,软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。指由第三方服务商提供的实现软件产品某项功能的工具包。

通常SDK是由专业性质的公司提供专业服务的集合,比如提供安卓开发工具、或者基于硬件开发的服务等。也有针对某项软件功能的SDK,如推送技术、图像识别技术、移动支付技术、语音识别分析技术等,在互联网开放的大趋势下,一些功能性的SDK已经被当作一个产品来运营。

开发者不需要再对产品的每个功能进行开发,选择合适稳定的SDK服务并花费很少的经历就可以在产品中集成某项功能。

SDK和API的区别

实际上SDK包含了API的定义,API定义一种能力,一种接口的规范,而SDK可以包含这种能力、包含这种规范。但是SDK又不完完全全只包含API以及API的实现,它是一个软件工具包,它还有很多其他辅助性的功能。
SDK 包含了使用 API 的必需资料,所以人们也常把仅使用 API 来编写 Windows 应用程序的开发方式叫做“SDK编程”。

通俗语言解释

API: 前端调用后端数据的一个通道,就是我们俗说的接口,通过这个通道,可以访问到后端的数据,但是又无需调用源代码。
SDK: 工程师为辅助开发某类软件的相关文档、范例和工具的集合,使用SDK可以提高开发效率,更简单的接入某个功能。
举例说明: 一个产品想实现某个功能,可以找到相关的SDK,工程师直接接入SDK,就不用再重新开发了。

为什么做接口测试

接口测试介绍

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

为什么做接口测试

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

由于如今的系统复杂度不断上升,传统的测试方法成本急剧增加且测试效率大幅下降,所以就要做接口测试。同时,接口测试相对容易实现自动化持续集成,且相对UI自动化也比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,支持后端快速发版需求。接口持续集成是为什么能低成本高收益的根源。

现在很多系统前后端架构是分离的,从安全层面来说,只依赖前端进行限制已经完全不能满足系统的安全要求(绕过前面实在太容易), 需要后端同样进行控制,在这种情况下就需要从接口层面进行验证。前后端传输、日志打印等信息是否加密传输也是需要验证的,特别是涉及到用户的隐私信息,如身份证,银行卡等。

接口测试怎么做

后端接口测试测什么?
从下面这张图可以看出后端接口测试主要测了些什么:

怎么做接口测试

一般情况下,由于我们项目前后调用主要是基于http协议的接口,所以测试接口时主要是通过工具或代码模拟http请求的发送和接收。所以我们下面整理了一下使用Jmeter工具进行http接口测试。

开发接口测试案例的整体方案

第一步: 分析出测试需求,并拿到开发提供的接口说明文档。
第二步: 从接口说明文档中整理出接口测试案例,里面要包括详细的入参和出参数据以及明确的格式和检查点。
第三步: 和开发一起对接口测试案例进行评审。
第四步: 结合开发库,准备接口测试案例中的入参和出参数据,并整理成csv格式的文件。
第五步: 结合接口测试案例文档和csv格式的数据文档,做接口测试案例的自动化案例开发。

接口测试流程

接口自动化适用场景

测试前置、开发自测:
  一个新的自动化接口测试案例开发完成后,直接发给接口对应的开发,安排在开发本地环境执行,一旦开发确认完成接口开发,就开始执行接口测试案例,基本上可以实时拿到测试结果,方便开发快速做出判断。(开发本地运行的方式就是打开JMeter工具,导入JMX文件,开始执行可。)

回归测试:

开发本地测试通过后,或整个需求手工测试通过后,把自动化的接口测试案例做分类整理,挑选出需要纳入到回归测试中的案例,在持续集成环境重新准备测试数据,并把案例纳入到持续集成的job中来,这些用于回归的接口测试案例需要配置到持续集成平台自动运行。

接口测试工具介绍

这里呢 就是简单给你个列表,后续呢我会写jmeter 和 postman 的使用方法。

接口测试用例

基本信息(简要)
列名 描述
接口名称 这个接口的名称
状态 这个接口的状态,已完成、未完成
接口路径 接口访问的网址
请求参数
Headers:
  请求头需要携带的值

Body:
  请求体的参数,这个是接口的关键之一
  传递哪些参数,什么数据类型,一般只有 number 和 string 类型。

返回数据
  这里声明了这个接口调用成功返回什么结果,失败返回什么结果。

设计用例

接口测试报告

另外写一篇:https://blog.csdn.net/weixin_43664254/article/details/89951142

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,919评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,567评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,316评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,294评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,318评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,245评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,120评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,964评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,376评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,592评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,764评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,460评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,070评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,697评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,846评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,819评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,665评论 2 354

推荐阅读更多精彩内容