簡體   English   中英

Sinon存根在這種情況下不起作用?

[英]Sinon stub is not working in this scenario?

我正在嘗試使用sinon存根通過創建IF語句的模擬值來測試我的功能,如testFunction中所述

在文件myFunction.js之一中,我具有如下功能

function testFunction() {
  var job = this.win.get.value1   //test
  var job1 = this.win.get.value2 // test1
  if(job === 'test' && job1 === 'test1') {
    return true;
  }
    return false; 
}

我正在嘗試使用業力測試testFunction,並且試圖使用sinon stub來測試功能

it('should test my function', function(done) {
  var stub = sinon.stub(myFunction,'job','job1').returns('test','test1');
  myFunction.testFunction('test', function(err, decodedPayload) {
    decodedPayload.should.equal(true);
    done();
  });
});

有人可以告訴我我在哪里做錯嗎?

您使用的sinon.stub錯誤。 您需要對sinon.stub進行兩次調用,對於要存根的myFunction每個方法sinon.stub一次調用。

it('should test my function', function(done) {
  sinon.stub(myFunction,'job').returns('test');
  sinon.stub(myFunction,'job1').returns('test1');
  myFunction.testFunction('test', function(err, decodedPayload) {
    decodedPayload.should.equal(true);
    done();
  });
});

請參閱Sinon文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM