一、node.js的安装

运行环境必须使用node.js,把其作为服务器来跑,

安装教程

二、swagger的安装

教程

对上面的图片进行进行讲解,教程博客中大部分都讲清楚了,所以我这里就不说了,在我做的过程中就是这个地方没有看懂,我在这里进行解释一下,它讲的那个url是在public/index.html 文件中,把它替换为后边的就可以了,还有那个text.json名字要用自己的。

三、用法

使用 Swagger Editor 编写API文档,把写好的文档下载下来就可以跑了,若在公司里的话就把这个服务器安装在公有的服务器之上,把写好的接口文档提交上去,这样前后台就可以遵循着这种契约来进行写代码了。

四、Mock server 的使用

契约测试

谈到了前后端分离,那么在所难免,会遇到一些集成的问题:一拨人在全心全意的进行前端开发,另一拨人在心无旁骛的做后端开发,那么谁应该为集成买单呢?在现在这个持续集成、持续交付的年代里,我们应该如何去保证双方不会分道扬镳、越走越远呢?

所以,在一开始就定一个契约就成了迫在眉睫的事情,双方就API相关的内容,包括路径、参数、类型等达成一致,当然,这份契约并不是一旦创建就不能修改的,而且,如果一开始没有设计好,很有可能会频繁的修改。这个时候,要让双方都能够实时的跟踪最新的API就成了一个难题。还好,在总结了前人的经验和教训之后,我们早已有了应对之策,那就是契约测试。

老马(Martin Fowler)早在2011年的时候就发表了一篇博客http://martinfowler.com/bliki/IntegrationContractTest.html,专门讨论了如何做契约测试。

首先,我们先假设我们已经有了一份契约,可能是基于JSON格式的,有可能是基于XML格式的,这都不重要。然后,前端会根据这份契约建立一个Mock server,所有的测试都发往这个Mock server。有两方面的原因:一是这个时候可能后台的API还没有开发完成;二是有可能因为网络等其他方面的原因导致直接调用真实的后台API会很不稳定或者很耗时。到这里,可能有人就要说了,如果后台的API实现和之前约定的并不一样,怎么能保证到了集成的时候双方还能很顺利的集成呢?其实这个问题并不难,只需要让前端的测试定期连接真实的API执行一遍就能尽早的发现差异性。比方说,在我们平常的build pipeline上添加一个job,让这些测试每天在午夜里连着真实的API执行。如果,第二天发现这些测试有的失败了,那么就需要和开发后台API的人员进行一次沟通了,很有可能由于真实的业务逻辑发生了变化,API在实现的时候,已经和之前的契约不一致了,如果是这样,那么相应的测试和契约定义就需要更新以满足最新的业务需求。

总之,进行契约测试的目的就是尽早的发现差异性,并作出调整,将最后集成的风险降到最低。

总结:我写这篇文章的目的是想学习以下几个知识点
1、就是一个前后台的API规范问题,这个我已经学到了,就是大家都常用的 RESTFul (这是一个优秀的个人博客讲解RESTful API 设计指南的)接口格式
2、我想知道如何使用swagger软件写出符合json格式的 RESTful 接口文档,这个我也差不多会了。
3、我想要学习如何使用swagger编写契约测试,这点我没有学会,有会的望指点一下。

RESTful 架构

1、REST(表现层状态转换) 把资源呈现出来的形式叫做它的表现层,状态转换就是让服务器数据发生转换
2、设计一套合理好用的API

Swagger UI教程 API 文档神器 搭配Node使用相关推荐

  1. Spring Boot 集成 Swagger 生成 RESTful API 文档

    原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...

  2. 超详细!使用swagger自动生成Api文档(swagger-ui)

    介绍 swagger是什么? swagger-ui 使用swagger-ui 简单使用 swagger api注解 本文参考: 介绍 这里是一些介绍,如果想直接看如何使用,请直接跳过这部分.但如果有时 ...

  3. swagger php修改成中文,PHP使用swagger自动生成API文档

    使用 swagger 自动生成 API 文档 使用 swagger 自动生成 API 文档,有需要的朋友可以参考下. 一.下载 swagger-ui 直接上传服务器 二.下载 swagger-php ...

  4. springboot 集成 swagger 自动生成API文档

    Swagger是一个规范和完整的框架,用于生成.描述.调用和可视化RESTful风格的Web服务.简单来说,Swagger是一个功能强大的接口管理工具,并且提供了多种编程语言的前后端分离解决方案. S ...

  5. Python 实现 Swagger yaml 格式 api 文档合并

    需求来源 公司业务系统中,API文档定义使用了Swagger,由于多人开发中每个人开发的节点不同,整体的业务过于复杂,维护一套完整的 API 文档十分繁重,且容易出现误修改,所以用 python 实现 ...

  6. 使用swagger实现在线api文档自动生成 在线测试api接口

    使用vs nuget包管理工具搜索Swashbuckle 然后安装便可 注释依赖于vs生成的xml注释文件 转载于:https://www.cnblogs.com/ProDoctor/p/752607 ...

  7. Spring Boot 2.x基础教程:使用Swagger2构建强大的API文档

    点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 作者 | 翟永超 来源 | didispace.com/spring-boot-learni ...

  8. 浅析如何在Nancy中使用Swagger生成API文档

    原文:浅析如何在Nancy中使用Swagger生成API文档 前言 上一篇博客介绍了使用Nancy框架内部的方法来创建了一个简单到不能再简单的Document.但是还有许许多多的不足. 为了能稍微完善 ...

  9. 爽到爆!阿里腾讯都在用的API管理神器,API文档、测试、Mock全搞定

    作为一个后端开发,我做的大部分项目一般都是基于 Swagger 来管理 API 文档,基于 Postman 来做接口调试,基于 JMeter 来做接口性能测试,基于 RAP 等工具 Mock API ...

最新文章

  1. oracle顺序读等待,Oracle Study之--Oracle等待事件(4)
  2. 新秀nginx源代码分析数据结构篇(四)红黑树ngx_rbtree_t
  3. bellmanford队列优化
  4. Linux里怎么进行路由跟踪,[Linux] traceroute 路由跟踪指令用例
  5. matlab写字,Matlab实现鼠标写字代码
  6. 关于H5工程师那些日常必需工具
  7. 对 PL/SQL开发调试的想法
  8. Xshell配合Screen之ssh会话永不断开
  9. 程序设计语言诞生——程序设计语言的发展历史
  10. java事务传播机制事例,spring事务传播机制
  11. 任天堂残酷马里奥游戏
  12. java导出mysql数据表的结构生成word文档
  13. DSP复习笔记(2)——TMS320F28335芯片内部结构
  14. 微信支付商户朋友圈广告
  15. LSTM预测多支股票的收盘价
  16. linux设置打开终端快捷键
  17. PHP——get和post请求他人接口
  18. 华三H3C交换机配置端口聚合之二层端口静态和动态聚合
  19. 用计算机打印相片怎么调色,我想打印这张照片脸色有些发红,请高手调调色,谢谢了...
  20. QT 自定义分页控件

热门文章

  1. idea 启动SpringBoot项目出现java程序包:xxx不存在
  2. 主成分分析二级指标权重_主成分分析法 - 确定多因素影响权重
  3. 自动驾驶系统中视觉感知模块的安全测试
  4. 对接企业微信4:接收消息与事件
  5. python实现自动发送邮件,同时给多人发送,是工作变的简单(附源码)
  6. 南信大计算机科学与坫,校园万象 | 南信大开启无处不在“i-NUIST”模式,疑难问题,为你一一解答!...
  7. operator=函数.
  8. vlc播放器或者web实现rtmp拉流
  9. 【diffusion】扩散模型详解!理论+代码
  10. OSPF如何配置被动接口