Node.js 面试题
目录

请解释 NestJS 的测试方法。如何编写单元测试和端到端测试?

· 约 4 分钟读完 · 第 367 / 377 章

推荐答案

单元测试

在 NestJS 中,单元测试通常用于测试单个类或方法的行为。你可以使用 Jest 作为测试框架,NestJS 默认集成了 Jest。以下是一个简单的单元测试示例:

端到端测试

端到端测试用于测试整个应用程序的行为,通常从 HTTP 请求开始,直到返回响应。NestJS 提供了 @nestjs/testing 模块来帮助编写端到端测试。以下是一个简单的端到端测试示例:

本题详细解读

单元测试

单元测试是测试单个类或方法的行为,确保它们在隔离环境中按预期工作。在 NestJS 中,你可以使用 Test.createTestingModule 方法来创建一个测试模块,然后通过 module.get 方法获取要测试的服务实例。你可以使用 Jest 提供的 describe、it 和 expect 等方法来定义测试用例和断言。

端到端测试

端到端测试是测试整个应用程序的行为,通常从 HTTP 请求开始,直到返回响应。在 NestJS 中,你可以使用 Test.createTestingModule 方法创建一个测试模块,并通过 createNestApplication 方法创建一个 NestJS 应用程序实例。然后,你可以使用 supertest 库来模拟 HTTP 请求,并验证响应是否符合预期。端到端测试通常用于测试控制器、中间件、过滤器等与 HTTP 请求相关的部分。