node.js - 异步测试在节点 10 停止工作,在节点 12 工作。如何诊断?
问题描述
如果是这样的话,多头和空头:
describe( async function(){const awaitSomething = something (...); expect(awaitSomething).to.equal('somethingAwaited')}
在节点 10.15.3 中运行的带有一些异步/等待测试(例如或类似)的大型测试套件- 引入一个同事组件库(它本身与节点 10.15 3 中的测试一起运行)
- 除非我们升级到节点 12.x,否则我们的大型测试套件会失败
具体来说,即使我们指定.only
运行不相关的测试套件,这也会导致测试失败。一旦我们注释掉组件函数的导入,它在哪里集成和在哪里休息,所有其他测试失败都会停止。
我们很可能升级到节点 12.x,但我仍然想了解哪里出了问题。
唯一的两个线索是新组件 pulls whatwg-fetch
,并且在节点 10.15.3 中我们收到一个错误(无论是否导入组件)说
ExperimentalWarning: fs.promises is experimental
.
这来自 jsdom 内部。
由于我无法从代码库中粘贴代码,因此无法在此处显示 MVP,但是有没有办法诊断这个问题?我试过使用DEBUG='*'
,但我无法从中得到任何有意义的东西。我的主要猜测是 polyfill 覆盖了某些东西,但我不知道是什么。
解决方案
推荐阅读
- powerbi - PowerBI 到 ADLS Gen2 与防火墙问题
- reactjs - 当我尝试使用材质 UI 的样式属性时,它会给出类型错误如何修复?
- javascript - JavaScript :- 不能在初始化之前调用 A 上的方法;试图调用方法“resizeGrid”
- angular - 即使我以角度传递了一个值,表单也没有任何价值
- html - @media 查询不起作用
- r - 如何在ggplot2中按时间顺序重新排序日期
- javascript - 我遇到的数组问题,请不要生气
- c++ - 开关盒跨越初始化修复
- yaml - 如何为 yaml 管道中的循环指定条件
- azure - 如何使用 Azure.Data.Tables.TableClient 进行事务处理?