V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
akinoniku
V2EX  ›  JavaScript

你是怎么组织和管理前端 Unit Test 的 Mock Data 的

  •  
  •   akinoniku · 2015-10-23 06:01:58 +08:00 · 3075 次点击
    这是一个创建于 3310 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1. 你 mock data 跟 test 有没有放在不同文件?
    2. 怎么保证 server 更新的时候 mock data 随之更新?
    3. 你用 sinon 吗?
    4 条回复    2015-10-23 18:49:50 +08:00
    shuson
        1
    shuson  
       2015-10-23 11:21:53 +08:00   ❤️ 1
    这几天正被这个事情烦着。
    由于 code coupled 太严重,写一个 UT 要 mock 好几个东西,比如 jquery promise 等 还有一些其他第三方的。
    关于 server response ,我采用的是不管不顾,只要 url 被叫到,就算 pass , response 直接 mock ,假装 server 那边没问题。
    用 sinon 的话,感觉又增加了工作内容
    21paradox
        2
    21paradox  
       2015-10-23 17:05:09 +08:00
    jasmine.spyOn 要被 mock 的方法

    mock data 写在 beforeEach 里面
    21paradox
        3
    21paradox  
       2015-10-23 17:35:13 +08:00   ❤️ 1
    好吧,我现在用 superagent 和 superagent-mock , mock 内容直接写在 spec 里
    chemzqm
        4
    chemzqm  
       2015-10-23 18:49:50 +08:00   ❤️ 1
    不写 mock data ,数据格式不确定。做一个 mock 服务器,增删改请求都返回 200 ,查询的话请求直接转发线上(中间需要添加 token )服务器,为提高效率让 memcache 做个定时缓存,需要的时候手动清除。
    界面的模块与请求模块是绝对独立的,测试时无需请求服务器。
    sinon 有些 API 很坑,对的都能测成错的,先进的浏览器可以用 Object.observe 监测对象 MutationObserver 监测 DOM
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1469 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 17:32 · PVG 01:32 · LAX 09:32 · JFK 12:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.