自建moco服务测试接口

285 阅读2分钟

需求

对于移动端开发人员来说,有时候在开发页面的过程中想要测试效果,但是后台接口还没有开发完成,这个时候就需要自己模拟数据。模拟数据可以通过自建服务来获取模拟数据,当后台接口完成后,我们只需要跟换接口请求地址就可以了,方便实用。

Moco

Moco是一个可以轻松搭建测试服务器的框架/工具/程序库

github地址github.com/dreamhead/m…

百度云盘地址(jar包):后续补充添加

使用方式

1,github方式:在项目的 readme 中找到 Quick Start,Download Standalone Moco Runner 百度云盘方式:下载jar包

2,新建文件夹:testServer,将jar包放入其中

3,依据下图新建文件列表:

.
│  global.json
│  moco-runner-0.10.2-standalone.jar
│  test.json
│
└─api
    ├─book
    │      book.json
    │
    └─person
            person.json

global.json(全局配置文件) 文件内容:

[    {	"file_root":"api/book",        "include": "book.json"    },    {        "file_root":"api/person",        "include":"person.json"    }]

book.json 中配置了书籍数据信息:

[    {        "request": {            "method": "get",            "uri": "/book_list"        },        "response": {            "json": {                "books": [                    "Python基础编程",                    "wxPython实战",                    "Java核心编程",                    "Java编程思想"                ]
            }
        }
    },
    {
        "request": {
            "method": "get",
            "uri": "/book",
            "queries": {
                "book_name": "java_hxbc"
            }
        },
        "response": {
            "json": {
                "name": "Java核心编程",
                "price": 50
            }
        }
    }
]

person.json 配置了人物信息:

[    {        "request": {            "method": "get",            "uri": "/person",            "queries": {                "name": "Jack"            }        },        "response": {            "json": {                "country": "USA",                "age": 18            }        }    }]

3,打开Commond命令终端,进入testServer目录,并运行命令:

java -jar moco-runner-0.10.2-standalone.jar http -p 8888 -g global.json

注意:

1,global.json 文件不是必须的。可以直接将person.json,book.json 文件存放到jar包平级目录中。 此时服务启动命令的 -g 应当为 -c,如下,只能使一个json文件中的接口有效

java -jar moco-runner-0.10.2-standalone.jar http -p 8888 -c person.json

其他内容

  • 接口文件中的response结构中的一级字段对应有12个:

    分别是:"status", "attachment", "headers", "version", "factory", "file", "text", "proxy", "cookies", "json", "latency", "path_resource"

  • request结构中的一级字段对应有14个:

    分别是:"method", "headers", "json", "factory", "uri", "text", "cookies", "xpaths", "json_paths", "version", "file", "queries", "path_resource", "forms"

  • Moco 除了支持 get,还支持 post、put 、delete 等请求方式

  • Moco 的其它特性可参考 Moco 的 API 文档