如何使用mocha测试外部javascript资源?

如何使用mocha测试外部javascript资源?,javascript,mocha.js,Javascript,Mocha.js,我正在尝试运行mocha测试来测试外部js文件中的函数,但是当我尝试运行mocha测试时,它什么也没有给我,这意味着我的测试有问题。js 如果我在test.js内部测试一个函数,它就会工作。 这是我如何生成以下代码的参考指南 这是需要测试的js(test.js的相对路径是。/../scripts/main) 这是我的test.js /* global describe, it */ (function () { 'use strict'; var assert = chai.as

我正在尝试运行mocha测试来测试外部js文件中的函数,但是当我尝试运行mocha测试时,它什么也没有给我,这意味着我的测试有问题。js
如果我在test.js内部测试一个函数,它就会工作。 这是我如何生成以下代码的参考指南

这是需要测试的js(test.js的相对路径是
。/../scripts/main

这是我的test.js

/* global describe, it */
(function () {
    'use strict';
    var assert = chai.assert;
    var expect = chai.expect;
    var should = chai.should();
    var add = require('../../scripts/main').add;
    describe('test1', function(){
        it('should return 3 when add 1 and 2', function(done){
          assert.equal(3, add(1,2));
          done();
        });
    });
})();

在@c089的帮助下,以下是工作脚本:)


我希望该代码抛出,因为
chai
不是必需的。“试着运行摩卡测试”和“什么都不给我”到底是什么意思?@c089它给了我>>0通过!(0.00s),意味着它不运行我的js文件尝试将文件作为第一个参数传递给它执行,或者将测试目录与
--recursive
@c089结合使用,我使用的是grunt mocha,不要认为它附带--recursive,你是什么意思将文件作为第一个参数传递给它执行更好,你现在有错误了;)似乎您现在需要在require调用中修复主模块的路径。祝你好运:)
/* global describe, it */
(function () {
    'use strict';
    var assert = chai.assert;
    var expect = chai.expect;
    var should = chai.should();
    var add = require('../../scripts/main').add;
    describe('test1', function(){
        it('should return 3 when add 1 and 2', function(done){
          assert.equal(3, add(1,2));
          done();
        });
    });
})();
/* global describe, it */
(function () {
    'use strict';
    var add = require('./main').add;
    var assert = require("assert");
    describe('test1', function(){
        it('should return 3 when add 1 and 2', function(done){
          assert.equal(5, add(1,2));
          done();
        });
    });
})();