Typescript 由于ANSI,Jest快照测试使用相同的输出失败

Typescript 由于ANSI,Jest快照测试使用相同的输出失败,typescript,jestjs,snapshot,ansi,ts-jest,Typescript,Jestjs,Snapshot,Ansi,Ts Jest,因此,我创建了一个定制的jest matchers,我测试它们的方法之一是使用快照测试 测试在我的本地环境(Windows)中通过,在CI(Linux)中失败 失败测试的输出是相同的 我试图重新创建这个问题,所以我在WSL中运行了测试,测试通过了,所以我在其他一些Linux服务器上运行它,测试再次通过 我认为这是某种行尾问题,所以我检查了一下,我的行尾仍然没有解决方案 我通过以下方式调试CI: 打印快照 更新快照 再次打印 我发现我的快照包含ANSI转义码,所以在搜索之后,我找到了这个Git

因此,我创建了一个定制的jest matchers,我测试它们的方法之一是使用快照测试

测试在我的本地环境(Windows)中通过,在CI(Linux)中失败

失败测试的输出是相同的

我试图重新创建这个问题,所以我在WSL中运行了测试,测试通过了,所以我在其他一些Linux服务器上运行它,测试再次通过

我认为这是某种行尾问题,所以我检查了一下,我的行尾仍然没有解决方案

我通过以下方式调试CI:

  • 打印快照
  • 更新快照
  • 再次打印
我发现我的快照包含ANSI转义码,所以在搜索之后,我找到了这个GitHub问题评论——合作者写道:

您可以尝试使用
NO_COLOR=1
CI=true
或类似的工具运行

因此,我在本地机器上同时尝试了这两种方法,但没有成功,我在WSL中尝试了这两种方法,但都失败了,因此我删除了
CI=true
(因为我考虑了ANSI)并通过了测试,所以我只尝试了
CI=true
,测试失败


所以我不想只在WSL中运行我的测试,所以我需要找到一个不同的解决方案,使它成为相同的快照。

所以解决方案是使用包

我需要将其添加到jest配置中的快照序列化程序中,如下所示:

{
“快照序列化程序”:[“jest快照序列化程序ansi”]
}