问题标签 [nestjs-testing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
454 浏览

nestjs - NestJS 测试失败:无法设置未定义的属性“电子邮件”

我在 NestJS 应用程序的测试文件中看到一个奇怪的错误。我似乎无法弄清楚,出了什么问题:我有一个 TypeORM 存储库的测试文件:

和一个存储库:

但是,该this.create()方法似乎不起作用。它似乎回来undefined了,最终我的测试出现错误(即使测试都通过了:

收到的承诺被拒绝而不是解决被拒绝的值:[TypeError:无法设置未定义的属性“电子邮件”]

任何人都可以帮忙吗?我似乎无法弄清楚,为什么user是未定义的。

0 投票
2 回答
1822 浏览

javascript - 在 NestJS 中使用 Mongoose 测试服务

我正在尝试在 NestJS 中测试我的 LoggingService,虽然我看不到测试有任何问题,但我得到的错误是Error: Cannot spy the save property because it is not a function; undefined given instead

正在测试的功能(为简洁起见):

这几乎是我的第一次 NestJS 测试,而且我可以说这是测试它的正确方法,考虑到错误最终是正确的,它似乎是正确的。

模拟模型:

0 投票
1 回答
1224 浏览

nestjs - 使用@Injectable Scope / @Inject(REQUEST) NestJS 测试类

我已经设置了 MongooseConfigService 以允许我们为某些请求动态切换连接字符串,并尝试正确设置测试。

但是,我在提供request测试上下文时遇到了麻烦。

据我所知,在没有injectand with/without的情况下尝试过useValue,但是this.request在尝试运行测试时仍然未定义。

TIA

0 投票
0 回答
689 浏览

node.js - NestJs 测试 - 是模块内相关提供程序/导入的 REPOSITORY 部分

我正在尝试使用nestjs 为基于mono-repo 的应用程序编写单元测试用例。

我面临以下错误

使用的包如下

请参考下面的示例代码

应用程序\api\src\modules\enduse\enduse.controller.spec.ts

libs\cache-manager\src\cache-manager.module.ts

libs\cache-manager\src\cache-manager.provider.ts

jest.config.js

如何解决问题?

谢谢。

0 投票
1 回答
152 浏览

nestjs - 无法通过 EntityRepository.create 或 EntityRepository.persist #MikroOrm #NestJS 插入数据

:)

我正在尝试使用文件中的代码测试我的实体操作。我正在创建一个 userRepository 对象,如下所示

当我从存储库中进行 console.log find{} 时,它会获取以前存储的记录: image 我使用 faker 创建了一个虚拟对象,它工作正常,但是一旦我尝试在 DB 中创建它或将其持久化,它似乎没有工作: 在此处输入图像描述

我也试过 orm.em.persist。如果需要更多详细信息,请告诉我。

0 投票
1 回答
611 浏览

jestjs - 尽管在 package.json 中进行了配置,但在 monorepo 中对应用程序的 Nestjs e2e 测试无法使用 jest 从库中解析 @app 导入

我正在尝试为 monorepo 应用程序运行 e2e 测试,该应用程序还利用 monorepo 中的多个库,整个应用程序中的所有导入都使用“@app”导入解决,例如import { ConfigService } from "@app/config"

但是,当尝试通过以下命令运行 e2e 测试时:

开玩笑抛出:

从 @jmcdo29 查看了这个 demo-repo,找不到任何与我的配置不同的东西。

我注意到2019 年在这里通过 jest 生成了错误配置的问题,但它早就解决了,我在 package.json 中对 jest 的配置确实提到:

而 package.json 脚本命令的本地目标文件仅包含:

我的命令或配置中是否缺少某些内容?

我需要指定什么来告诉 jest 扩展 package.json 中可用的 jest 配置吗?

感谢您对投资的任何帮助,谢谢。

0 投票
3 回答
696 浏览

jestjs - 开玩笑地抛出关于 node_modules 依赖项中的导入的引用错误

我有一个通过 Jest 进行工作测试的 nestjs monorepo 应用程序。这与全局单元测试有关,它们从 package.json 中的 nestjs CLI 创建的配置中获取配置。

我的 storage.service.ts 使用jimp其中一种方法来调整图像大小。

这具有@jimp/types依赖于@jimp/gif哪个依赖于gifwrap.

对于在我的控制台中运行的每个测试,我都会看到以下错误:

我还使用 beforeAll() 和 afterAll() 钩子来关闭 nestjs 模块。

笑话配置:

我怎样才能消除这个错误,或者甚至像修复它一样大胆?

0 投票
1 回答
527 浏览

node.js - 如何使用 Jest 在 Nestjs 中测试超时拦截器

我找不到任何关于如何在 NestJS 中测试拦截器的解释。

请帮我用玩笑测试拦截器?

0 投票
2 回答
644 浏览

unit-testing - Nestjs overrideProvider 与单元测试中的提供者

我在 NestJS 中看到了两种模拟服务以进行单元测试的方法,第一种与我们在真实模块中定义提供者的方式相同,例如:

另一种方法是overrideProvider方法。如下:

有什么区别?

0 投票
2 回答
231 浏览

nestjs - 在 Nest.js e2e 测试中的单个测试中覆盖提供程序

我对带有控制器和一些提供程序的模块进行了 e2e 测试:

我在这里通过模拟 TestEntity 存储库来模拟数据库连接,它工作正常 - 服务的实际实现得到模拟的数据库查询结果。但是在一个测试中,我需要 TestEntity 提供者使用具有不同实现的模拟查找功能:

我怎样才能做到这一点?我想使用 TestService 的真正实现,它在后台使用被模拟的 TestEntity 存储库(我不想使用测试数据库)。提前感谢您的帮助。