1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

新闻 模拟服务器 Moco 0.10.1 发布 下载

本帖由 漂亮的石头2015-05-13 发布。版面名称:软件资讯

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    486,326
    赞:
    46
    Moco 0.10.1发布了。

    Moco是什么?

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

    变更

    本次发布对使用Java API的用户最大影响在于,原来的httpserver已经废弃了,推荐使用httpServer。

    HttpServer server = httpServer(12306);

    另外一个废弃掉的API是没有TimeUnit的latency,推荐使用有时间单位的latency接口。

    server.response(latency(1, TimeUnit.SECONDS));

    以上废弃的API将会在下一次发布中移除,请尽早更新。

    接下来,比较大的变动是增加了字符集,file和pathResource都可以进行字符集的处理。

    server.response(file("gbk.response", Charset.forName("GBK")));

    甚至,日志也指定对应的字符集:

    HttpServer server = httpServer(port(), log("path.log", Charset.forName("UTF-8")));

    模板在原来对内容处理的基础上,增加了对文件名的处理:

    server.response(file(template("${var}.response", "var", "foo")));

    这样一来,你可以把更多模板的特性用在文件名上,比如jsonPath、xpath等,也就是说,可以把不同请求应答的结果,放到不同的文件里。当然,你可以把它用在JSON配置文件里:

    [
    {
    "response":
    {
    "file":
    {
    "name": {
    "template": {
    "with" : "${var}.response",
    "vars" : {
    "var" : "foo"
    }
    }
    }
    }
    }
    }
    ]

    这次发布还有一个针对于JSON API的调整,就是现在可以mount的时候,额外增加应答配置,比如像下面这样:

    [
    {
    "mount" :
    {
    "dir" : "src/test/resources/mount",
    "uri" : "/mount-response",
    "headers" : {
    "Content-Type" : "text/plain"
    }
    }
    }
    ]

    还有一个针对全局配置的特性,就是配置全局Request,如果你想实现一个全局token,保证每次请求都带过来,现在,就不必在每个请求上编写,只要配置一个全局的就好了:

    [
    {
    "request" : {
    "headers" : {
    "foo" : "bar"
    }
    },
    "include": "blah.json"
    }
    ]

    还有一个实现细节方面的调整,如果在模板里采用了xpath或jsonpath,可能会返回多个值,可以参考freemarker的文档编写对多值对象的处理。

    更多发布相关信息,请参考Release Notes
    模拟服务器 Moco 0.10.1 发布下载地址
     
正在加载...