Javascript 绕过测试文件中的一些require()语句
我想在Javascript 绕过测试文件中的一些require()语句,javascript,node.js,jestjs,Javascript,Node.js,Jestjs,我想在server.js文件中为myFunction()编写单元测试: 主文件:server.js const config=require('./configuration');//简短回答:在导入到server.js之后添加jest.mock('./configuration')?是server.test.js的?我曾尝试添加server.test.js,但当它到达require('../server)行时,当我进入该行时,它仍尝试在测试文件中加载实际的.configurationYes。它
server.js
文件中为myFunction()
编写单元测试:
主文件:server.js
const config=require('./configuration');//简短回答:在导入到server.js
之后添加jest.mock('./configuration')
?是server.test.js的
?我曾尝试添加server.test.js
,但当它到达require('../server
)行时,当我进入该行时,它仍尝试在测试文件中加载实际的.configuration
Yes。它将尝试加载该文件以生成mock。如果文件不存在,则应使用virtual:true传递options对象-检查文档中是否存在该文件
const config = require('./configuration'); // <==== local js file that breaks when unit testing
const other = require('some-module'); // <==== some module that is needed and it does not break when testing.
module.exports { myFunction };
function myFunction() {
// ...
}
function someOtherFunctions() { /*...*/ }
const server = require('../server'); // <=== one level up in the folder hierarchy
it('should work', () => {
});