资讯专栏INFORMATION COLUMN

【mock service系列】使用 Rosie mock JS数据

olle / 550人阅读

摘要:的作用主要就是构建一些的数据对象,大部分使用场景也是在测试中。具体使用时候,一般会有一个用来构建,另外一个在需要数据的地方进行直接引入。当你厌倦已有的无论是字面量生成,还是多带带数据生成的方式。感觉用更符合语义以及函数思维。

Rosie? factory_girl?

如果说是单纯命名上面,是受一幅画的影响,画里面的妹子叫Rosie;
如果是项目灵感其实是来自于factory_girl,factory_girl在github以及segmentfault上的资料都有一些,百度也找得到,但是关于Rosie的着实不多,所以就想share下。

What

Rosie的作用主要就是构建一些js的数据对象,大部分使用场景也是在测试中。

虽然这部分和mock service没有直接的关系,但是因为在整个涉及到api的test过程中(非单元测试),我们的套路一般是用工具生成假的数据对象(结构和真实的一致),然后把数据传给对应的mock service,所以暂时也把本文放在mock service 系列。

How

一般使用npm或者yarn 添加依赖并安装js包就可以使用。

具体使用时候,一般会有一个factory用来构建,另外一个在需要数据的地方进行直接引入。好处是数据构建逻辑和业务处理的逻辑可以隔离。
在object builder 部分

import { Factory } from "rosie"
export default new Factory()
  .sequence("id")
  .attr("Type", () => "User")
  .attr("Name", {first: "Yangyang", last:"Cao")
  .attr("Birthday":"1992-01-01")
  .attr("Job", {company:"TW",position:"Developer"})

在使用的部分

 import ProfileFactory from "./fixtures/profile"
 beforeEach(() => {
    parameters = {
      ID: "00124B00000zU5f17AE",
      Profile: ProfileFactory.build()
    }
  })

其他的使用方法也是存在的,具体请参考github

Why

为什么使用,本人是因为之前每次在before each 或者自己写builder太麻烦了,最常见的是,在一个已有的obeject上面增加新的属性,烦不胜烦。

When

当你厌倦已有的无论是字面量生成mock data,还是多带带数据builder 生成mock data的方式。
感觉用Rosie更符合语义以及函数思维。

缺点

暂时没发现,增加了新的依赖算吗?

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/88323.html

相关文章

  • mock service系列】Online mock service or API by Sand

    摘要:沙箱,第一反应,但并不是。为避免误解,下文中所有提到都是指这个工具,不是沙箱。做什么的,根据其官网上的描述可以理解为快速生成,即时部署,协作构建并集成了调试工具。对个人而言,强烈推荐给入门的人。 Sandbox--沙箱,第一反应,但sorry并不是。 sandbox 这个词大家并不陌生,但貌似国内的技术share中很少看到有提到这个工具的。为避免误解,下文中所有提到sandbox都是指...

    zgbgx 评论0 收藏0
  • 使用API自动生成工具优化前端工作流

    摘要:在工作中,我们的前端工作流一般开始于前后端协商好文档之后,再针对这个文档做模拟数据,然后用做好的进行开发,后端开发完毕之后再改一下数据的切换到正式进行联调如下本文介绍的一个工具或者说方法,来将这个工作流优化一下,也是我平时工作正在用的方法, 在工作中,我们的前端工作流一般开始于前后端协商好Api文档之后,再针对这个Api文档做mock模拟数据,然后用做好的mock进行开发,后端开发完毕...

    GeekQiaQia 评论0 收藏0
  • 手摸手,带你用vue撸后台 系列一(基础篇)

    摘要:详细具体的使用可以见文章手摸手,带你优雅的使用。为了加速线上镜像构建的速度,我们利用源进行加速并且将一些常见的依赖打入了基础镜像,避免每次都需要重新下载。 完整项目地址:vue-element-admin系类文章二:手摸手,带你用vue撸后台 系列二(登录权限篇)系类文章三:手摸手,带你用vue撸后台 系列三(实战篇)系类文章四:手摸手,带你用vue撸后台 系列四(vueAdmin 一...

    xiaotianyi 评论0 收藏0
  • windows本地安装部署 Easy Mock

    摘要:在前后端分离的开发方式下,后端如果暂时没数据,前端为了开发方便可以使用模拟数据来对付一下,目前提供模拟数据的平台已经有不少,大多数都是自带管理的,比如甚至我们可以本地用自己写其中比较小清新,使用起来也方便点,缺点就是没有的分组功能,但平 在前后端分离的开发方式下,后端如果暂时没数据,前端为了开发方便可以使用模拟数据来对付一下,目前提供模拟数据的平台已经有不少,大多数都是自带Api管理的...

    jaysun 评论0 收藏0

发表评论

0条评论

olle

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<