嘲笑笑话?

我对JS很新,但我正在尽我所能学习。 事实上,我试图嘲笑。 这是我的基类(为了testing的目的而减less):

import compression from 'compression'; import express from 'express'; export default class Index{ constructor(){} spawnServer(){ console.log(express()); let app = express(); app.use(STATIC_PATH, express.static('dist')); app.use(STATIC_PATH, express.static('public')); etc... } } 

这是我试图在一个单独的testing文件中实现的testing…:

 test('should invoke express once', () =>{ index.spawnServer(); expect(mockExpressFuncs().use.mock.calls.length).toBe(3); }) 

我的问题是 – 如何使testing覆盖被testing的类的要求 – 甚至可能吗? 我希望我的索引使用express的模拟版本,其中包括express()和express.require。

我确实阅读了文档,并尝试了如下内容:

 const mockFunction = function() { return { use: useFn, listen: jest.fn() }; }; beforeEach(() => { jest.mock('express', () => { return mockFunction; }) express = require('express'); }); 

但是这不起作用 – 我做错了什么? 🙁

谢谢。