问题标签 [angular-spectator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - Angular:使用 Spectator 模拟路由器 url
我使用createRoutingFactory
withSpectator
但出现此错误:
我按照文档创建了我的测试文件:
使用以下方法修复了子组件上的类似错误ng-mocks
:
但这一次,this.router.url
正在我正在测试的组件中使用,而不是在孩子中使用。
我尝试了这样的不同方法:
(更多信息:https ://pretagteam.com/question/how-to-set-data-on-activatedroute-for-spectator-test )但没有运气。
我也没有得到与在 Spectator 中使用createRoutingFactory
和createServiceFactory
with的区别。mocks: [Router]
(更多信息https://netbasal.com/spectator-v4-a-powerful-tool-to-simplify-your-angular-tests-bd65a0bf317e)
angular - 单元测试功能 ehich 返回可观察对象的可观察对象
我遇到了这样的单元测试功能问题:
我想根据 spyOn 来做到这一点。像这样的东西:
我有一个错误:
TypeError:无法读取未定义的属性(读取“管道”)
这很明显,因为 dataService.clearData 是一个模拟,所以我需要从这个方法返回一些值:
这个解决方案很糟糕,因为无法触发其他服务调用。
你知道如何测试这个功能吗?
angular - 在 Angular 13 上使用 Spectator (with Jest) 失败并出现错误“找不到模块'@angular/core/testing'”
一个应用程序在 Angular 版本 12 上运行。测试是通过基于 Jest 的 Spectator完成的。
如何升级 Angular 13 并拥有一个有效的 Spectator (Jest) 测试环境?
如何重现?
在这个示例 Angular 12 项目中,您克隆了一个 Angular 12 项目。然后在 README.md 中找到将项目升级到 Angular 13 的步骤。下一步是将 Spectator 从 7.1.0 升级到 10.0.0。这将失败,所以我附加了一个“--force--allow-dirty”。好的,似乎工作。启动“jest --watch”会显示错误。
好的,我在慢动作中做了什么:
尝试 1:当我使用 Spectator 7.1.0 将项目从 Angular 12 升级到 13 时,我在使用 Spectator 进行测试时不断收到此错误消息:
错误:找不到模块“@angular/core/testing”。
尝试 2:正确运行 Angular 12 并将 Spectator 从 7.1.0 升级到 10.0.0,所以另一条路线,我得到:
错误:来自@ngneat/spectator@10.0.0 的对等@angular/animations@">= 13.0.0"
尝试 3:将 Angular 升级到 13 并将 Spectator 一次性设置为 10.0.0 也不起作用。
在 Angular 12 和 Spectator 7.1.0 之前,我的环境运行良好。
1 - jest.config.js:
2 - jestSetup.js:
3 - tsconfig.spec.ts:
4 - 我卸载了 Karma/Jasmine并删除了“test.ts”和“karma.config.ts”文件。这在各种手册中都有建议。
javascript - 开玩笑的异步测试让我很困惑
这是场景:
使用 Jest/Spectator 测试可观察的 RXJS,但似乎无法通过当前设置进入我想要测试的代码行
组件代码 -
测试-
我遇到的问题是,当测试运行时,我可以看到我收到了 403,但没有调用 router.navigate。如果我在组件中 console.log 订阅块的那一部分,我会看到它从未到达过。
我如何测试那行代码?