我是个测试新手
这是我的应用程序简化图
我想测试UserService
。
用户服务提供程序依赖于TypeOrmModule。
这里是userService.spec.ts
describe('test UserService', () => {
let app: INestApplication;
beforeAll(async () => {
const moduleRef = await Test.createTestingModule({
imports: [UserModule],
}).compile()
app = moduleRef.createNestApplication();
await app.init();
});
afterAll(async () => {
await app.close();
});
});
但这给了我一个错误
Nest无法解析UserRepository(?)。请确保索引[0]处的参数DataSource在TypeOrmModule上下文中可用。
有什么问题吗?我该怎么解决?
1条答案
按热度按时间n3h0vuf21#
要隔离地测试服务,只需定义一个包含基本文件的
TestingModule
。例如,假设你有一个
UserService
,如下所示:然后编写一些单元测试来检查代码是否按预期工作:
正如您所看到的,单独测试组件比将模块作为一个整体进行测试更容易。