gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-04 17:19:41 26 4
gpt4 key购买 nike

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

但是,当尝试通过命令运行端到端测试时:

"test:public": "jest --config ./apps/public-microservice/test/jest-e2e.json",

开 Jest :

 Cannot find module '@app/config' from '../src/public-microservice.module.ts'

我看过this demo-repo from @jmcdo29并且找不到任何与我的配置不同的东西。

我注意到有一个关于通过 jest 生成错误配置的问题 here in 2019 ,不过早就解决了,我在package.json中jest的配置确实提到了:

    "moduleNameMapper": {
"@app/config/(.*)": "<rootDir>/libs/config/src/$1",
"@app/config": "<rootDir>/libs/config/src",

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

{
"moduleFileExtensions": ["js", "json", "ts"],
"rootDir": ".",
"testEnvironment": "node",
"testRegex": ".e2e-spec.ts$",
"transform": {
"^.+\\.(t|j)s$": "ts-jest"
}
}

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

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

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

最佳答案

我将“moduleNameMapper”键添加到我的 jest e2e 套件配置中并更新了“../”相对路径以匹配我的库所在的位置,在我的特定场景中,它看起来像这样:

  "moduleNameMapper": {
"@app/config/(.*)": "<rootDir>../../../libs/config/src/$1",
"@app/config": "<rootDir>../../../libs/config/src",
},

关于jestjs - 尽管在 package.json 中进行了配置,但 monorepo 中应用程序的 Nestjs e2e 测试无法通过 jest 解析从库中导入的 @app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66956387/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com