提问人:Andreas T 提问时间:8/13/2023 更新时间:8/13/2023 访问量:15
获取在测试中通过 MatDialog 打开的组件的 Angular 组件实例
Get Angular component instance of component that was opened via MatDialog in tests
问:
在使用 Jest 作为测试运行程序的 Angular 项目中,我正在为组件 Parent 编写组件测试。父级在内部使用注入的 ;该对话框显示组件 Child。MatDialog
组件测试应包含以下行为:
- 创建 Parent 的实例。
- 执行导致父级打开对话框的触发器。
- 验证是否已使用正确的参数创建了 Child 实例。
我知道的唯一解决方案是用间谍进行模拟并验证对该方法的调用。但是,我更希望我能找到在 DOM 中创建的 Child 实例并对该对象执行验证。有没有办法做到这一点?MatDialog.open
值得注意的是,使用 (with being of type ) 不起作用,可能是因为 Child 不是在 Parent 的子树中创建的。fixture.debugElement.query
fixture
ComponentFixture<Parent>
答: 暂无答案
评论