使WebStorm识别jest.setupFilesAfterEnv中定义的方法

问题描述 投票:0回答:1

[在Webstorm中,我正在使用jest进行单元测试,并且已经使用expect.extend()创建了扩展名。此代码在{projectDir}./tests/jest-helpers.js中,在我的package.json中,我具有以下内容:

"jest": {
  "setupFilesAfterEnv": ["./tests/jest-helpers.js"]
}

这很好用,在我的单元测试中,expect扩展名也很好用。但是,在我的单元测试中调用此方法的代码未被识别为有效,并带有警告提示“未解决的函数或方法”。

我将.js文件添加为库,但这仍然没有完成。如何获得被认可的方法?我是否可以执行一些JSDoc操作,以告知WebStorm expect对象具有新属性?

我的expect扩展名定义的示例未被当作有效方法使用。

// jest-helper.js
expect.extend({
   toSmellLike(actual, expected) {
      // an implementation
   }
});

使用中:

expect(value).toSmellLike('bananas'); // `toSmellLike is highlighted with a warning
javascript unit-testing jestjs webstorm code-hinting
1个回答
0
投票

我一直在寻找相同的...。我最好的方法是使用JSDoc注释突出显示自定义方法。

/**
 * @typedef {jest.Expect} expect
 * @property {function} toSmellLike
 */

只需将其添加到您的扩展调用上方,它就可以工作。

仍然在寻找如何使用它来完成代码。

© www.soinside.com 2019 - 2024. All rights reserved.