【发布时间】:2020-02-10 11:25:22
【问题描述】:
我有这个代码(Node.js):
文件:utils.js
// utils.js
const foo = () => {
// ....
}
const bar = () => {
// ....
}
module.exports = { foo, bar }
文件:myModule.js
// myModule.js
const {
foo,
bar
} = require('./utils');
const bizz = () => {
let fooResult = foo()
return bar(fooResult)
}
module.exports = { bizz }
文件:myModule.spec.js
// myModule.spec.js
const { bizz } = require('./myModule');
describe('myModule', () => {
it('bizz should return bla bla bla', () => {
let foo = jasmine.createSpy('foo').and.returnValue(true)
let bar = jasmine.createSpy('bar').and.callFake((data) => {
expect(date).toBeTrue();
return 'fake-data'
})
expect(bizz()).toBe('fake-data')
})
})
我正在尝试在 foo 和 bar 函数上使用间谍来测试 bizz,但效果不佳。
谁能向我解释如何在这些函数上创建间谍以测试 bizz??
【问题讨论】:
标签: javascript unit-testing testing jasmine jasmine-node