2016-10-10 223 views
0

这是我第一次尝试使用摩卡和柴,并且我创建了这个小测试文件test.spec.js,我在其中放置了一些测试。用摩卡和柴测试

var expect = require('chai').expect; 

var foo = 'bar'; 

describe('Test', function() { 
it('Should exist', function() { 
    expect(foo).to.exist; 
}); 
it('Should be a string', function() { 
    expect(foo).to.be.a('string'); 
}); 
it('Should equal bar', function() { 
    expect(foo).to.equal('bar'); 
}); 
it('Should be at least 3 chars', function() { 
    expect(foo).to.have.length.above(2); 
}); 
}); 

这是在一个单独的文件中,我有我的“主要”代码。
但我该如何去测试我在脚本文件中写入的实际相关代码?

我没有使用ES6,所以我无法导入或需要。但我使用npm,这就是我需要chai的原因。

所以,我的计划是这样的

A folder 
- myscript.js 
- test.spec.js 

如何测试的MyScript?

+0

可以添加myscript.js文件 –

+0

你使用任何脚本加载器? – Thaadikkaaran

回答

-1

将您的测试脚本是这样的:

var myscript = require('./myscript.js'); 

下面是一个例子:

'use strict' 

const expect = require('chai').expect 
const myscript = require('./myscript.js') 

describe('myscript', function() { 
    it('should be a function', function() { 
    expect(typeof myscript).to.equal('function') 
    }) 

    it("should return an object with toString method", function() { 
    expect(myscript().hasOwnProperty("toString")).to.be.true 
    }) 
}) // etc... 
+0

有关*的问题我该如何去测试我在脚本文件中编写的实际相关代码* – Thaadikkaaran

+0

哦......对不起。为什么不简单地分配var myscript = require('./ myscript.js'); ? –

+0

更新了我的答案。看看是否有帮助.. –