开玩笑 没有找到测试

新手上路,请多包涵

在 macOS 上运行 docker mhart/alpine-node:8

nodejs (6.10.3-r0) (1818) 纱线 0.24.6 玩笑 20.0.4

但是,在运行代码时,我有一个 __tests__/index.test.js 文件

node_modules/.bin/jest --watchAll 我得到以下输出

没有找到测试

在 /usr/src/app

检查了 5 个文件。

testMatch: /__tests__/ /*.js?(x),**/?(*.)(spec|test).js?(x) - 1 场比赛

testPathIgnorePatterns: /node_modules/,/src, src - 0 个匹配项

模式:“” - 0 场比赛

我已经重新安装了包号数次,但无济于事。

原文由 Kendall 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 268
2 个回答

您的输出显示 testMatch1 match ,这可能是您的 __tests__/index.test.js 文件。似乎您的 testPathIgnorePatterns 导致该测试套件被忽略。 No tests found In /usr/src/app says that Jest is looking for tests in /usr/src/app , and testPathIgnorePatterns: /node_modules/,/src,src says that Jest is ignoring files in /src directories.

要么让 Jest 查看你的 __tests__/index.test.js 文件的位置(如果它在 /src 目录之外),要么停止 testPathIgnorePatterns 忽略 /src 目录。

原文由 Zachary Ryan Smith 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果你有如下的文件结构

myFolder
│   myFile1.js
│   myFile2.js
│   ...
│
└───__tests__
        myFile1.spec.js
        myFile2.spec.js
        ...


那么您需要在 jest.config.js 中为 testMatch 属性设置以下模式:

 testMatch: ['**/__tests__/*.js?(x)'],

jest.config.js 的一个简单示例:

 const jestConfig = {
  verbose: true,
  testURL: "http://localhost/",
  'transform': {
    '^.+\\.jsx?$': 'babel-jest',
  },
  testMatch: ['**/__tests__/*.js?(x)'],
}

module.exports = jestConfig

原文由 Roman 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题