简介:sinon用于创建测试替身、消除测试环境复杂性
1、spies

2、stubs

完全替换目标函数。使得一个被stubbed的函数可以做任何你想要的(如抛出一个异常,返回某个特定值等)

  • 创建:

    var xx = sinon.stub();
    var xx = sinon.stub(对象名, “方法名” );

  • stub.withArgs(arg1[, arg2, …]); 根据不同输入参数进行不同的反应

       callback.withArgs(42).returns(1);callback.withArgs(1).throws("TypeError");callback(); // No return value, no exceptioncallback(42); // Returns 1callback(1); // Throws TypeError
    

3、mocks
4、Fake timers
穿越时间,例如触发一个setTimeout
5、Fake XMLHttpRequest and server
伪造Ajax请求和响应

前端测试 -- sinon.js相关推荐

  1. sinon.stub_JavaScript测试工具对决:Sinon.js vs testdouble.js

    sinon.stub 在对真实代码进行单元测试时,有许多情况使测试难以编写. 您如何检查是否调用了函数? 您如何测试Ajax呼叫? 还是使用setTimeout编码? 就是在这种情况下,您使用测试倍数 ...

  2. JavaScript测试工具对决:Sinon.js vs testdouble.js

    在对真实代码进行单元测试时,有许多情况使测试难以编写. 您如何检查是否调用了函数? 您如何测试Ajax呼叫? 还是使用setTimeout编码? 就是在这种情况下,您使用测试倍数 -替换代码使难以测试 ...

  3. sinon.js的spy、stub和mock

    sinon 做测试的知道,在 Java 的单元测试中,不能获取实际对象时,我们可以使用 Mock/Stub 对我们的代码进行mock 等操作,更好的方便我们测试. 像 EasyMock.JMock.M ...

  4. javascript功能插件大集合 前端常用插件 js常用插件

    包管理器 管理着 JavaScript 库,并提供读取和打包它们的工具. npm:npm 是 JavaScript 的包管理器.官网 Bower:一个 web 应用的包管理器.官网 component ...

  5. 前端测试简述及使用Karma/Mocha实现的集成测试栗子(Travis CI/Coverage)

    前端测试 开发类型 TDD (Test Driven Development),测试驱动开发 BDD (Behavior Driven Development),行为驱动开发 // add.js fu ...

  6. 【node测试系列】几款前端测试断言库(Assertions lib)的选型总结

    参考文章 http://blog.lvscar.info/post/... 在编写前端测试代码的过程中, 几乎所有的测试框架都提供了根据功能.模块(module ,spec )来切分测试用例的设计, ...

  7. 前端测试框架(学习之路)前言

    为什么需要单元测试 正确性:测试可以验证代码的正确性,在上线前做到心里有底 自动化:当然手工也可以测试,通过console可以打印出内部信息,但是这是一次性的事情,下次测试还需要从头来过,效率不能得到 ...

  8. Aurelia – 模块化,简单,可测试的 JS 框架

    Aurelia 是下一代 JavaScript 客户端框架,利用简单的约定来激发你的创造力.凭借其强大的专注于开发经验, Aurelia 可以使您不仅创造惊人的应用程序,同时也享受这个过程.它经过精心 ...

  9. 概览:可视化前端测试

    腾讯云技术社区-掘金主页持续为大家呈现云计算技术文章,欢迎大家关注! 作者:莫卓颖 背景 相信进行过前端开发的同学都知道,前端测试不仅仅涉及到功能的测试,而且也需要考虑到界面样式测试.多浏览器兼容性测 ...

最新文章

  1. 新浪微博开放平台API中page参数的使用方法
  2. Spring Annotation(@Autowire、@Qualifier)
  3. 枚举算法:求两个整数m,n(m>n)最大公约数的欧几里得算法描述。
  4. redis 中一个字段 修改map_Redis中bitmap的妙用
  5. SQL SERVER2008 打开脚本总是报“未能完成操作,存储空间不足”
  6. 最新关于高德地图定位失败10:定位服务启动、解决办法
  7. 神经网络与机器学习导言笔记——反馈
  8. cfa英语不好的怎么学_没有英语基础,怎么学cfa?
  9. TM7705、TM7707使用
  10. Vue项目:style样式篇
  11. 七夕到了 —— 属于 Java 的浪漫,拿去吧~ 祝表白成功
  12. python ar_四种AR的实现方式
  13. Oracle 分页查询方法和效率分析
  14. 小众又冷门的手帐,居然也是一个非常赚钱的项目
  15. ADC芯片ADS1258采集数据的读取
  16. Python入门 类型转换
  17. 什么是百度竞价排名?
  18. 林语堂告倒世界书局内幕
  19. HSE\HEI\PLL\LSE\LSI
  20. SOFARegistry + SOFABoot + SOFARPC Demo

热门文章

  1. 华为交换机SEP双半环设计方案及配置详细步骤
  2. laravel常见错误(一):The page has expired due to inactivity. Please refresh and try again.
  3. 关于北洋壳的网友问题
  4. 九连环问题(Java)
  5. 将输入的单词按首字母排序
  6. zookeeper原理:分布式协同技术
  7. 心田花开:七年级语文第一单元《济南的冬天》知识点汇总
  8. apk解包工具 安卓_MT管理器最新2.9.3版支持ROOT后安卓10安卓11文件修改替换
  9. 查看 class 文件
  10. python 语言与numpy库