还在手工写接口测试文档,已经out了
接口文档,顾名思义就是对接口说明的文档。好的接口文档包含了对接口URL,参数以及输出内容的说明,我们参照接口文档就能编写出一个个的测试用例。而且接口文档详细的话,测试用例编写起来就会比较简单,不容易遗漏。
如果接口文档信息不全或是没有接口文档的情况下,领导要求我们做接口自动化测试,这无异是一个非常艰辛的任务。但是编写接口文档的工作量很大,怎么办呢?有什么自动化工具可以协助我们生成文档呢?
众里寻他千百度,最近我发现一款工具可以大大解放我们工作,自动生成接口文档。他就是YApi,先上图说明,这是我在YApi中做的接口文档,是不是蛮专业
YApi介绍
1 YApi 是什么呢
YMFE 是去哪儿网移动架构组(YMFE)简称,是由FE,iOS和Android工程师共同组成的
• Yapi 由 YMFE开源,旨在为开发、产品、测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建、发布、维护 API。
• YApi 成熟的团队管理扁平化项目权限配置满足各类企业的需求
• 基于 websocket 的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率
• Mock Server 易用的 Mock Server,再也不用担心 mock 数据的生成了
• 自动化测试 完善的接口自动化测试,保证数据的正确性
• 数据导入 支持导入 swagger, postman, har 数据格式,方便迁移旧项目
2 试用地址如下
http://yapi.demo.qunar.com/
3 这是一个Mock接口数据维护例子
4 更为强大的是,可以支持数据导入,和文档导出,可以把项目中的接口导出到HTML文件,同时在本地word中,就可以将HTML文档转换为word文档,更方便我们转播和存储。
安装使用
5如何安装呢,直接采用docker安装最为简单(需要有docker使用基础)
5.1 安装mogodb;
docker run -d --name mongo-yapi mongo;
5.2 拉取yapi
docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi
5.3、初始化管理员账号和服务
docker run -it --rm
--link mongo-yapi:mongo
--entrypoint npm
--workdir /api/vendors
registry.cn-hangzhou.aliyuncs.com/anoy/yapi
runinstall-server
5.4、初始化管理员账号和服务
启动YApi服务
docker run -d
--name yapi
--link mongo-yapi:mongo
--workdir /api/vendors
-p 3002:3000
registry.cn-hangzhou.aliyuncs.com/anoy/yapi
server/app.js
5.5、访问http://ip:3002
6 mock平台不足地方,如果涉及后台业务,比如查询数据库 ,java方向可以采用springmvc 自己定制,这就需要具备测试开发能力了,例如自定义动态返回接口
还在手工写接口测试文档,已经out了的更多相关文章
- 有了Swagger2,再也不用为写Api文档头疼了
1.为什么要写Api文档 现在,前后端分离的开发模式已经非常流行,后端开发工程师只负责完成后端接口,前端页面的开发和渲染完全由前端工程师完成. 问题来了,前端工程师怎么知道后端接口的具体定义呢?答案是 ...
- 你会用AngularJS,但你会写AngularJS文档么?
你会用AngularJS,但你会写AngularJS文档么? 涉及知识:gulp javascript 我们经常在写代码的时候要求写好注释,方便日后维护.但其实注释还有一个重要的用途:生成API文档. ...
- 看云&gitbook 写帮助文档 | 专注于文档在线创作、协作和托管
看云 写帮助文档 | 专注于文档在线创作.协作和托管 https://www.kancloud.cn/manual/thinkphp/1678 https://www.gitbook.com/
- 「快学springboot」16.让swagger帮忙写接口文档
swagger简介 官方的介绍 THE WORLD'S MOST POPULAR API TOOLING Swagger is the world's largest framework of API ...
- 使用docsify 写开源文档
使用docsify 写开源文档 官网:https://docsify.js.org/#/ docsify 是一个动态生成文档网站的工具.不同于 GitBook.Hexo 的地方是它不会生成将 .md ...
- 《Spring Boot 实战纪实》之如何攥写需求文档
目录 前言 (思维篇)人人都是产品经理 1.需求文档 1.1 需求管理 1.2 如何攥写需求文档 1.3 需求关键点文档 2 原型设计 2.1 缺失的逻辑 2.2 让想法跃然纸上 3 开发设计文档 3 ...
- C#写TXT文档
//C#写TXT文档 String strDir = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAs ...
- 要写文档了,emmm,先写个文档工具吧——DocMarkdown
前言 之前想用Markdown来写框架文档,找来找去发现还是Jekyll的多,但又感觉不是很合我的需求 于是打算自己简单弄一个展示Markdown文档的网站工具,要支持多版本.多语言.导航.页内导航等 ...
- Markdown写接口文档,自动添加TOC
上回说到,用Impress.js代替PPT来做项目展示.这回换Markdown来做接口文档好了.(不敢说代替Word,只能说个人感觉更为方便)当然,还要辅之以Git,来方便版本管理. Markdown ...
- Perl:写POD文档
官方手册:https://perldoc.perl.org/perlpod.html POD文档是perl的man文档,可以用perldoc输出,也可以直接用man输出.在开始下面的文章之前,请先粗略 ...
随机推荐
- C++ 第一节课 名字空间 ,输入输出函数,和 C 语言的区别
#include <iostream> // #include 头文件,C++标准库的头文件都不带 .h (.h 是C库头文件添加的) #include <cstdio> #i ...
- kali Linux 启动 apache 和 mysqll
kali linux 自带 apache 服务 和 mysql 服务 # 启动 apache 服务 service apache2 start # 启动 mysql 服务 service mysql ...
- for循环、break和continue、二重循环
循环语句 循环语句可以反复多次执行同一组语句,for关键字可以用来编写循环:可以在for循环里让一个变量依次代表一组数字,然后使用同一组语句处理这个变量代表的每个数字.这个变量叫做循环变量,按照统一的 ...
- 一次彻底讲清如何处理mysql 的死锁问题
MySQL 死锁 是指两个或多个事务互相等待对方持有的锁,从而导致所有事务都无法继续执行的现象.在 InnoDB 存储引擎中,死锁是通过锁机制产生的,特别是在并发较高.业务逻辑复杂的情况下,更容易发生 ...
- AutoDarkMode:Win上自动切换深浅模式的工具
AutoDarkMode是一款Windows上用于根据时间自动切换亮暗主题的工具. 打开后,即可设置根据时间(通常是白天亮晚上暗)自动切换主题(需要软件开机启动). 你也可以在切换颜色主题的同时设置两 ...
- c++时间管理大师
作者花了一个下午写出来的. c++写的时间管理大师. 支持一下. #include<bits/stdc++.h> #include<windows.h> using names ...
- ToDesk云电脑推出Web端,这意味着什么?
在数字化转型的浪潮中,云计算技术正在以前所未有的速度改变着我们的生活方式和工作模式.作为云计算领域的一股新生力量,ToDesk云电脑凭借其卓越的性能和便捷的使用体验,一经上线,便赢得了众多用户的青睐. ...
- Nuxt.js 应用中的 builder:watch 事件钩子详解
title: Nuxt.js 应用中的 builder:watch 事件钩子详解 date: 2024/10/24 updated: 2024/10/24 author: cmdragon excer ...
- 一文彻底弄懂MySQL的优化
在企业级 Web 开发中,MySQL 优化是至关重要的,它直接影响系统的响应速度.可扩展性和整体性能.下面从不同角度,列出详细的 MySQL 优化技巧,涵盖查询优化.索引设计.表结构设计.配置调整等方 ...
- 【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(4)
1.问题描述: 目前华为推送API使用的是v2或者v1版本,请问目前最新的鸿蒙next使用v3版本是否兼容v2或者v1,反过来将v2或者v1的api可以推送鸿蒙next的设备吗? 解决方案: v3接口 ...