码迷,mamicode.com
首页 > 其他好文 > 详细

前端开发中的单元测试(1)—mocha

时间:2015-09-11 17:29:32      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:

基于nodejs的前端测试框架很多,最后选择了mocha。mocha你或许没听过,但是它的开发着—TJ,做前端的同学肯定听过。 废话少说,上正菜

  1. 因为mocha是基于nodejs,首选我们要安装nodejs环境,不会的同学请自行百度、google(看到这个,是不是心里有股冲动,油然而生)
  2. 安装mocha,其实就是一个nodejs模块。多了一个"-g"参数,为了使用方面将mocha安装导系统环境变量中,随便在哪个目录都能使用。
    npm install -g mocha
  3. 新建一个测试目录mocha,存放这个demo需要的文件
  4. 安装单元测试的断言模块,选TJ的should断言模块。这个模块就不要安装到系统环境变量了,会在当前目录下生产一个node_modules的目录,存放当前工程使用的所有模块
    npm install should
  5. 新建单元测试用例文件。在当前目录下新加一个test目录(mocha默认会执行test目录下所有的测试用例),再新建一个test.js的文件,这个文件存放单元测试用例代码
     1 var assert = require("should");
     2 var fs = require("fs");
     3 
     4 describe(‘同步测试‘, function() {
     5     it(‘数组测试‘, function() {
     6         assert.equal(-1, [1, 2, 3].indexOf(5));
     7         assert.equal(-1, [1, 2, 3].indexOf(0));
     8     })
     9 
    10     it(‘字符串合法性测试‘, function() {
    11         assert.equal("123", "123");
    12     })
    13 })
    14 
    15 
    16 describe(‘异步测试‘, function() {
    17     it(‘异步读取文件‘, function(done) {
    18         // index.js请自行添加,测试用例会读取里面的内容并比较
    19         fs.readFile("index.js", "utf8", function(err, data){
    20             data.should.eql("test");
    21             done();
    22         })
    23     })
    24 })
  6. 现在准备工作都完了,我们跑一下自己的测试用例,在命令行输入mocha。输入结果如下,3个test case,全部通过

技术分享

7.  如果修改test case,改成有错误的。test case的通过情况和出错的点,都非常清晰的显示出来

技术分享

 

总结:

篇幅优先,只把一些主要操纵流程展示处理,高级特性和一些个性化配置,请参考下面的资料。

后面会继续写综合性的使用分享

 

参考资料

  1. mocha的主页:http://mochajs.org/
  2. should:https://github.com/shouldjs/should.js

 

 

前端开发中的单元测试(1)—mocha

标签:

原文地址:http://www.cnblogs.com/lubezhang/p/4801443.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!