【问题标题】:Testing with Jest - TypeError: cannot read property 'forEach' of undefined使用 Jest 进行测试 - TypeError:无法读取未定义的属性“forEach”
【发布时间】:2018-11-27 21:04:24
【问题描述】:

我创建了一个示例项目来使用 Jest 编写测试。我遵循了一些教程。

我在打字稿文件中添加了一个简单的计算函数,如下所示。

Calc.cs

 export class Calc {
    public add(num1: number, num2: number) : number {
      return num1 + num2;
    }
    public subtract(num1: number, num2: number) : number {
      return num1 - num2;
    }
  }

然后添加如下测试文件。

import { should } from 'chai';
import { Calc } from './Calc';
should();


let calc = new Calc();
test('adds 1 + 2 to equal 3', () => {
    expect(calc.add(1, 2)).toBe(3);
  });

然后我尝试运行如下所述的测试。然后我得到了这个错误。

PS C:TestProject> npm t

typescriptseleniumtestproject@1.0.0 测试 C:TestProject 开玩笑

C:TestProject\node_modules\jest-haste-map\build\crawlers\node.js:49 names.forEach(文件 => { ^

TypeError:无法读取未定义的属性“forEach” 在 default.readdir (C:\TestProject\node_modules\jest-haste-map\build\crawlers\node.js:49:13) 在 go$readdir$cb (C:\TestProject\node_modules\jest\node_modules\graceful-fs\graceful-fs.js:149:14) 在 FSReqWrap.oncomplete (fs.js:135:15) npm ERR!测试失败。有关详细信息,请参见上文。

然后我浏览到显示错误的文件,并在下面提到。

node_modules\jest-haste-map\build\crawlers\node.js

【问题讨论】:

  • 请编辑您的问题并提供一些您自己的代码
  • 我稍微编辑了帖子并添加了小代码。

标签: javascript typescript testing npm jestjs


【解决方案1】:

可能导致此错误的一个问题:检查您是否位于正确的目录中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 2020-12-08
    • 1970-01-01
    相关资源
    最近更新 更多