Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在解决sinon时获得重复迭代,无法在nodejs中进行单元测试_Javascript_Angular_Unit Testing_Mocha.js_Sinon - Fatal编程技术网

Javascript 在解决sinon时获得重复迭代,无法在nodejs中进行单元测试

Javascript 在解决sinon时获得重复迭代,无法在nodejs中进行单元测试,javascript,angular,unit-testing,mocha.js,sinon,Javascript,Angular,Unit Testing,Mocha.js,Sinon,我正在尝试使用sinon在Nodejs中进行单元测试 我已经安装了以下库- 摩卡咖啡 [2] 柴慧敏 [3] 西农 这是我的密码- unitTest app.js var sinon = require('sinon'); it('calls the original function', function(){ var callback = sinon.fake(); var proxy = once(callback); proxy(); assert(

我正在尝试使用sinon在Nodejs中进行单元测试

我已经安装了以下库-

摩卡咖啡

[2] 柴慧敏

[3] 西农

这是我的密码-

unitTest app.js

 var sinon = require('sinon');


it('calls the original function', function(){

   var callback = sinon.fake();
   var proxy = once(callback);


   proxy();

   assert(callback.called);

   });



it('calls the original function only once', function () {
   var callback = sinon.fake();
   var proxy = once(callback);

    proxy();
    proxy();

     assert(callback.calledOnce);
     // ...or:
    // assert.equals(callback.callCount, 1);
   });
unitTest.js

 var sinon = require('sinon');


it('calls the original function', function(){

   var callback = sinon.fake();
   var proxy = once(callback);


   proxy();

   assert(callback.called);

   });



it('calls the original function only once', function () {
   var callback = sinon.fake();
   var proxy = once(callback);

    proxy();
    proxy();

     assert(callback.calledOnce);
     // ...or:
    // assert.equals(callback.callCount, 1);
   });
功能一次(fn){
var返回值,
调用=错误;
返回函数(){
如果(!调用){
调用=真;
returnValue=fn.apply(这是参数);
}
返回值;
};
}
无法运行单元测试

运行命令时-

npm run test
获取错误-

以下是npm脚本:

“脚本”:{
“测试”:“摩卡”,
“测试:覆盖范围”:“纽约npm t”
},
然后,您可以使用
npm test
命令运行测试。此外,您应该将测试文件放入正确的目录中。看

one.js

功能一次(fn){
var返回值,
调用=错误;
返回函数(){
如果(!调用){
调用=真;
returnValue=fn.apply(这是参数);
}
返回值;
};
}
module.exports={once};
一次.test.js

var sinon=require('sinon');
var assert=require('assert');
var{once}=require('./once');
它('调用原始函数',函数(){
var callback=sinon.fake();
var proxy=一次(回调);
proxy();
断言(callback.called);
});
它('只调用原始函数一次',函数(){
var回调=sinon.false();
var proxy=一次(回调);
proxy();
proxy();
断言(callback.calledOnce);
});
单元测试结果:


  ✓ calls the original function
  ✓ calls the original function only once

  2 passing (6ms)

您的
包.json
中的
npm run test
行如何?“scripts”:{“test”:“npm run test”}-->这样行吗?