rapnc

0.1.0 • Public • Published

RAP Node Client

Guide

  1. sudo npm install -g rapnc (安装 rapnc)

  2. rapnc serve(启动rapnc服务器的在线模式)

  3. sudo rapnc pull 88 (获取项目编号88的所有RAP接口数据)

  4. 关闭步骤2启动的rapnc服务

  5. rapnc serve --offline (启动离线模式)

  6. 打开浏览器,点击 http://localhost:3000/nodeclient/mockjs/88/simple/datatypes.do,看看 RAP+Mockjs 正在用绳命为你随机生成的数据吧。

功能总览

  • serve:在本地启动Node Client服务器,提供RAP配置的接口数据、Mockjs渲染后的数据等

  • pull:将RAP配置的接口数据从RAP服务器获取到本地,并缓存,从而减轻RAP服务器压力,并支持离线访问

  • check:利用RAP接口数据,校验真实数据的正确性

  • 提供多种获取接口数据的URL调用方式,如 mockjs mockjsrule

serve:启动Node Client服务器

任何人都能当RAP数据服务器,提供假数据。

两种模式

启动服务器分为两种模式:

  • online 模式,直接连接RAP数据库(推荐在RAP服务器上使用online模式)

  • offline 模式,根据 项目 获取接口数据后,使用本地的接口数据来渲染假数据。

使用方式

rapnc serve [options]

rapnc serve --online 启动 online模式

rapnc serve --offline 启动 offline模式

默认情况下 rapnc serve 启动的是 online 模式

根据离线模式的功能,可以看出,在使用offline提供服务时,必须把 项目 对应的接口数据获取下来,这就是 rapnc pull PROJECT_ID 子命令的任务。

选项

  • --online 启动online模式

  • --offline 启动offline模式

  • --port 可以指定启动服务器的端口号

  • -h --help 可以查看命令帮助

pull:从RAP服务器获取项目的RAP接口数据,存储在本地

使用方式

rapnc pull PROJECT_ID [options]

如果碰到没有权限的问题,请 sudo

选项

  • --host 提供pull服务的目标主机,一般是运行了 rapnc serve 命令的机器

  • --port 提供pull服务的目标端口号

  • -h --help 可以查看命令帮助

其他说明

  • PROJECT_ID 是用户在RAP系统中新建项目的项目ID。

  • 执行命令成功以后,将会在 cache/projects 文件夹下,创建 PROJECT_ID.json 文件,存放接口数据。

  • 有了接口数据,就可以通过 rapnc serve --offline 启动离线服务器,轻松使用离线模式了

check:批量检测接口数据的正确性

使用方式

rapnc check PROJECT_ID|all [options]

选项

  • -d --test-dir 测试用例的目录

  • -c --current 把当前目录作为测试用例目录

  • --host 测试服务器的主机名,对应运行 rapnc serve 的机器

  • --port 测试服务器的端口号

  • -h --help 可以查看命令帮助

注意事项

  • 测试目录默认为 RAPNC/cache/tests 目录,该目录下的子目录名对应 PROJECT_ID,PROJECT_ID 目录下的每一个js文件是一个测试用例

部分URL调用方式约定

  • /mockjs/PROJECT_ID/ACTION_URL 返回mockjs渲染后的 真实 假数据

  • /mockjsrule/PROJECT_ID/ACTION_URL 返回mockjs渲染前的接口数据

  • /pulling/PROJECT_ID 返回的是项目下的所有接口数据 (rapnc pull 就是往这个url上发送请求的)

  • /checking/PROJECT_ID/ACTION?PARAMS 测试项目下某个Action返回内容的正确性 (rapnc check 就是往这个url上发送请求的)

Package Sidebar

Install

npm i rapnc

Weekly Downloads

28

Version

0.1.0

License

none

Last publish

Collaborators

  • wangjeaf