节点 16 的依赖项更新后单元测试中断

Unit test breaks after dependencies update for Node 16

我刚刚对项目的 package.json:

进行了一些更改
  • removed bundle-buddy-webpack-plugin
  • upgraded eslint from 4.11.0 to 6.0.0
  • upgraded prettier from 1.14.3 to 2.0.0
  • upgraded webpack from 4.28.1 to 4.36.0

除此之外,我所做的只是按照 lint 的要求格式化一些文本。这就是所有的变化。

但由于某些原因,在 Windows 上,一些单元测试期望值中断。在进行这些更改之前,我得到的是数字DOT小数。现在,我的期望失败了,因为它得到了 numberCOMMAdecimals。我也将 Windows 系统分隔符从逗号更改为点,但它没有帮助。

为什么这是一个问题,因为在我的同事 mac 上它工作得很好,在 Jenkins 上也是如此,在创建合并请求时所有单元测试套件都是 运行。

有谁知道为什么会出现这种行为?

找到 issue/difference。这确实是现场。它似乎采用了该语言环境并使用了该格式。有意思的是,在上面的升级之前,我调用toLocaleString时使用undefined,它使用的是EN格式,但现在它使用了系统的格式。

解决方案 是将我的系统 Region/Format 更改为我期望收到的任何内容。