gpt4 book ai didi

jestjs - 编写经过 Flow 验证的 Jest 测试的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-03 06:18:57 25 4
gpt4 key购买 nike

我想人们通常会一起使用 Flow 和 Jest(以及 React),但 Flow 似乎不了解 Jest(或 Jasmine)全局变量。当我将 //@flow 添加到我的测试中时,我收到如下 Flow 错误:

src/__tests__/Thing-test.js:3
3: jest.unmock('../Thing')
^^^^ identifier `jest`. Could not resolve name

src/__tests__/Thing-test.js:7
7: describe('Thing', () => {
^^^^^^^^ identifier `describe`. Could not resolve name

src/__tests__/Thing-test.js:8
8: it('does stuff', () => {
^^ identifier `it`. Could not resolve name

我可以为 Jest/Jasmine 编写一个 Flow 接口(interface),但这看起来很长,而且我肯定错过了一些东西。让 Flow 处理 node_modules/jest-cli 似乎没有帮助。

最佳答案

虽然 Jest 是用流注释编写的,但它们会剥离 npm 版本的类型,因此我们不需要 babel 来运行它。幸运的是,类型已经在 flow-type 中,因此解决方案非常简单(正如评论中提到的):

npm install -g flow-typed

flow-typed install jest@22.x.x # <-- replace the version with the latest

尽管我也必须将此行添加到我的 .eslintrc.json 中:

{
"env": {
"jest": true
}
}

关于jestjs - 编写经过 Flow 验证的 Jest 测试的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35898251/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com