我创建了一个示例项目来使用 Jest 编写测试。我遵循了一些教程。
我在 typescript 文件中添加了一个简单的计算函数,如下所示。
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 test C:TestProject jest
C:TestProject\node_modules\jest-haste-map\build\crawlers\node.js:49 names.forEach(文件 => { ^
类型错误:无法读取未定义的属性“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 错误!测试失败。有关详细信息,请参见上文。
然后我浏览到显示错误的那个文件,它在下面提到。
最佳答案
一个可能导致此错误的问题:检查您是否在正确的目录中。
关于javascript - 使用 Jest 进行测试 - TypeError : cannot read property 'forEach' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50919266/