Angular-测试模式的 NGXS 测试在 Angular 13 中被破坏

NGXS test for Angular-Test-Mode is broken in Angular 13

我们正在开发一个 Angular 应用程序,其中使用了 Ngxs(版本 3.7.3)。目前我们正在使用 Angular 12.2 并希望升级到 Angular 13。我们已成功将应用程序升级到 Angular 13,不幸的是我们的大量单元测试都失败了,所有这些都与路由模块生成的相同异常。我们在堆栈跟踪中找到了 ngxs-router-plugin 并试图找出发生了什么。 NGXS 检查 Angular 是否处于测试模式 - 模块 /internals/src/angular.ts 中的函数 isAngularInTestMode - 并相应地配置自身。这张支票坏了。

我们已经看到 ngxs 已经修复了这个问题——修复可以在 master 分支上找到。我们不会在下一个版本到期时发布。有人知道下一个 ngxs 版本什么时候发布吗?是否有其他人遇到同样的问题,如果有,您有解决方法吗?

在遇到完全相同的问题并进一步检查 NGXS 文档后,我发现 dev-builds 可从 master 分支获得 - 最初让我失望的是它们被标记为与上次 stable(标记 latest)构建相同的版本前缀。

简而言之:解决方法是使用 dev 标签,或有效解决问题的 dev-version - 在本例中为 3.7.3-dev.master-33cace6