我创建了一个Jest测试环境,其中我模拟了一个特定的模块:
const NodeEnvironment = require('jest-environment-node');
const { lumigo } = require('../../src/services/lumigo');
class TestEnvironment extends NodeEnvironment {
async setup() {
await super.setup();
jest.mock('../../src/services/lumigo');
lumigo.trace = jest.fn((func) => func);
}
async teardown() {
await super.teardown();
}
getVmContext() {
return super.getVmContext();
}
}
module.exports = TestEnvironment;
我将我的测试配置为使用以下测试环境:
/**
* @jest-environment ./tests/test-environment.js
*/
... rest of the test
然而,当我运行测试时,出现以下错误:
ReferenceError: jest is not defined
如果我在我的测试环境文件的顶部尝试添加以下内容:
const jest = require('jest');
我收到一个警告,
Jest自动处于范围内。不要导入"jest",因为Jest没有导出任何内容
,但测试仍然失败。如何在我的测试环境中使用
jest
(例如调用jest.mock
)?