美文网首页
测试框架Mocha

测试框架Mocha

作者: 07120665a058 | 来源:发表于2017-05-04 15:57 被阅读232次

可测试代码的几个原则:

  • 单一职责:逻辑尽可能的单一,分离不同的功能
  • 接口抽象:针对接口进行测试,具体代码的变化不会影响接口测试
  • 层次分离:代码分层,可以进行逐层测试

测试

  • BDD:行为驱动开发,注重测试逻辑,常用的describe, it, before, after
  • TDD:测试驱动开发,注重测试结果,常用的suite, test, setup, teardown
  • mocha默认的模式是BDD,要想执行TDD的测试时需要加上参数
mocha -u tdd test.js

Mocha和Jasmine对比

  • Mocha自身集成度不高(没有断言,spy,异步等)经常要配合Chai,Sinon等库使用
  • Jasmine集成度高,自带BBD,spy,方便的异步支持(2.0)
  • Jasmine功能齐全,Mocha灵活自由

两者功能覆盖范围粗略可以表示为:

Jasmine(2.x) === Mocha + Chai + Sinon - mockserver

Mocha

  • Mocha是一个JavaScript的测试框架,chai是一个断言库,两者应该搭配使用
  • Mocha提供的钩子包括before(), after(), beforeEach(), afterEach()可用于测试的预处理和后处理等
  • demo
describe('save()', function() {
      it('should save without error', function(done) {
         ...
       done();
     });
});
//描述应该能连成一句通顺的话
//在对数据库操作的时候,可以加上done()回调函数,解决异步问题
//一个it只能调用一次done,

断言库

  • 常用断言库:should.js/expect.js/chai.js/better-assert/assert
  • should.js——BDD风格断言库
foo.should.be()
bar.should.have()
  • expect.js——BDD风格断言库;基于should.js简化
expect(foo).to.be()
expect(foo).to.eql()
  • chai——BDD/TDD 双模 ,同时支持should / expect / assert三种风格的断言库
assert: assert.equal(something, someting)
should: something.should.equal(something)
expect: expect(something).to.equal(someting)

demo地址

参考文章推荐:
How to correctly unit test Express server
使用Mocha和Chai来测试Node.js应用
测试框架 Mocha 实例教程
初识 mocha in NodeJS
测试利器mocha
HTTP 服务器测试库 supertest
Mocha官网

相关文章

  • 学习测试框架Mocha

    学习测试框架Mocha Mocha 是javascript测试框架之一,可以在浏览器和Node环境下使用,除了Mo...

  • 前端单元测试

    单元测试 前端测试框架主要是Mocha与Jasmine,这里我们选择Mocha,断言库有should、expect...

  • 初识前端测试3 -- mocha

    mocha 在第一小结中的测试中用到了 mocha 框架,这一节就说说 mocha 框架吧。下面整理的内容主要来源...

  • 【前端单元测试入门01】Mocha与chai

    Mocha 的简介 Mocha是流行的JavaScript测试框架之一,通过它添加和运行测试,从而保证代码质量 M...

  • Node项目如何写覆盖率测试

    通常,我们的测试框架会使用mocha package.json 借助mocha,我们可以用nyc来进行覆盖率测试 ...

  • JavaScript自动化测试介绍

    下面是对JavaScirpt自动化测试和持续集成内容的整理: 测试工具 mocha mocha是一种测试框架,是运...

  • 2018-06-15 mocha 测试安装

    昨天的mocha安装任务没有完成,今天继续 1.学习Mocha,中文文档自己找。 2.测试框架 Mocha 实例教...

  • 测试框架Mocha

    可测试代码的几个原则: 单一职责:逻辑尽可能的单一,分离不同的功能 接口抽象:针对接口进行测试,具体代码的变化不会...

  • 使用mocha+debug调试代码

    0.测试框架是mocha 1.使用如下命令: cross-env NODE_ENV=test mocha --de...

  • 第一周预习

    Mocha Mocha 是用于 Javascript 测试的框架。浏览器和 node 环境都可以使用。安装npm ...

网友评论

      本文标题:测试框架Mocha

      本文链接:https://www.haomeiwen.com/subject/ananattx.html