我正在为项目添加测试并提高覆盖率。我想知道如何在 NestJs 中测试模块定义(mymodule.module.ts 文件)。特别是,我正在测试一个导入其他模块的主模块,其中一个模块启动数据库连接,这意味着我需要在另一个模块上模拟服务,以避免真正的数据库连接。此刻我有这样的事情:
beforeEach(async () => {
const instance: express.Application = express();
module = await NestFactory.create(MyModule, instance);
});
describe('module bootstrap', () => {
it('should initialize entities successfully', async () => {
controller = module.get(MyController);
...
expect(controller instanceof MyController).toBeTruthy();
});
});
这行得通,但我相信这可以得到改进:)
理想的情况是类似于 Test.createTestingModule 提供的 overrideComponent 方法。
PS:我用的是4.5.2版本