javascript - 开 Jest 单元测试 - 未找到测试

标签 javascript unit-testing jestjs

我从 Jest 单元测试开始。
在运行 Jest 单元测试时,我不断收到“未找到测试”。

错误描述

yarn test
    yarn run v1.3.2
    $ jest
    No tests found
    In E:\Course\Testing JavaScript\Jest Demo
      4 files checked.
      testMatch: **/__tests__/**/*.js?(x),**/?(*.)(spec|test).js?(x) - 3 matches
      testPathIgnorePatterns: \\node_modules\\ - 4 matches
    Pattern:  - 0 matches
    error Command failed with exit code 1.

操作系统:窗口 7,
节点 v:8.6,
npm v:5.4.2
folder structure :
Demo 
    package.json
    __tests__
           sum.js
           sum.test.js

sum.js 文件:
function sum(a, b) {
  return a + b;
}
module.exports = sum;

sum.test.js
const sum = require("./sum");

test("adds 1 + 2 to equal 3", () => {
  expect(sum(1, 2)).toBe(3);
});

包.json
{
  "name": "JestDemo",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "dependencies": {
    "jest": "^22.4.3"
  },
  "scripts": {
    "test": "jest"
  }
}

到目前为止,我已经引用了这些文章
Stackoverflow-Jest No Tests found

在 github 上还有一些关于相同问题的帖子,但没有任何帮助。

到目前为止我做了什么:

1)将脚本更改为指向包含测试文件的文件夹:
"scripts": {
    "test": "jest __test__"  // 
     from "test": "jest"
  }

2)尝试更改文件夹结构。

有人可以帮我解决问题吗?

最佳答案

您似乎已将代码和测试文件放在同一目录中( __tests__/sum.js__tests__/sum.test.js )。我认为这不是您所看到的失败的具体原因,但它不是惯例。

除非您的项目已完成,否则不必指定要搜索的文件夹。运行jest没有任何参数,除了必要的选项,它会搜索当前目录下面。

约定是:

/root
  /src
    sum.js
    /__tests__
      sum.js

或者:
/root
  /src
    sum.js
    sum.test.js

您可以使用testspec在后一个例子中。 rootsrc由你决定,root通常是 package.json 的位置并且是您从中调用 jest 的地方(例如 myApp )。 src帮助区分其他应用程序组件,例如构建和 Assets 。

关于javascript - 开 Jest 单元测试 - 未找到测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49584364/

相关文章:

javascript - 从多个表单中获取选择框的值

javascript - 如何使用 jest 进入 setTimeout 函数

javascript - 将简单文件附加到输入

angularjs - 如何模拟 $window 来单元测试 AngularJS 服务?

javascript - 创建可单元测试的闭包的最佳模式?

c# - 以编程方式触发 UI 事件以进行单元测试

javascript - 我如何用 Jest 模拟我的测试类的导入?

javascript - 如何使用 JEST 模拟方法内的方法?

php - php/javascript 中最好的跟踪下载方法是什么?

javascript - 将变量传递给 setInterval 函数