Angular Component UI单元测试的隔离策略
这是我需要进行单元测试的Component UI:
可以看到它依赖了另一个Component,其selector为cx-carousel.
因此我在单元测试实现文件里,给它创建一个mock Component:MockCarouselComponent:
@Component({selector: 'cx-carousel',template: `<ng-container *ngFor="let item$ of items"><ng-container*ngTemplateOutlet="template; context: { item: item$ | async }"></ng-container></ng-container>`,
})
class MockCarouselComponent {@Input() title: string;@Input() template: TemplateRef<any>;@Input() items: any[];
}
可以看到,MockComponent和生产版本的Component,属性类型和名称完全一致:
mock的carousel title数据:
生产代码里,carousel template里显示的属性有name和price:
为这两个属性提供的mock数据:
最后生成的mock UI:
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
Angular Component UI单元测试的隔离策略相关推荐
- SAP 电商云 Spartacus UI Angular Component 动态创建的单步调试
Jerry 之前的文章SAP 产品 UI 里的容器组件的概念和开发概述介绍过,SAP Spartacus Angular Component,通过我们开发团队自定义的指令 cxComponentWra ...
- 深入解析Angular Component的源码示例
本篇文章主要介绍了剖析Angular Component的源码示例,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下.如有不足之处,欢迎批评指正. Web Component 定 ...
- 使用 Rxjs 解决 Angular Component 之间的通信问题
本文讨论如果两个 Angular Component 彼此不知道对方的存在,并且也没有共享的父子 Component 时,如何进行通信. 在包括 Angular 在内的许多前端框架中,当我们将应用程序 ...
- SAP Spartacus B2B user列表对应的Angular Component
如下图所示,这个页面点击之后: 显示的Angular UI,在SAP Spartacus里并没有单独的Angular Component来实现: 在userCmsConfig里能发现,SAP Comm ...
- Angular Component代码和编译后生成的JavaScript代码
从 TypeScript 转换为 JavaScript 在这里称为编译. 在这种情况下,compiling 并不意味着创建二进制代码. 对于这种翻译,使用术语 transpilation 而不是 co ...
- KDD'20 Workshop 来了!学术竞赛,发表Paper,针对疫情设计隔离策略
Datawhale 主办方:KDD.宾夕法尼亚州立大学.上海交通大学等 顶级会议KDD,国内外高校联合发起 新型冠状病毒(COVID-19)感染的肺炎疫情牵动着全世界的心.大数据.人工智能.云计算等数 ...
- 关于 Angular Component ngOnDestroy 钩子函数的调用时机
我开发了一个 Angular Component,实现了 ngOnDestroy 钩子方法之后,没有找到其被调用的方法.查看这个StackOverflow链接后,得知无论是我刷新浏览器,还是从当前页面 ...
- Angular Component模板里的元素,运行时如何被生成并插入到DOM tree中
我有一个selector为app-root的Angular Component: 其模板文件里只有一行html代码: 在运行时,这个h1标签是如何插入到整个DOM tree里的呢? 在Angular ...
- SAP Spartacus 如何取得某个table字段对应的Angular Component
以下图为例,负责渲染table column name的Angular Component是什么? 没有名为headerComponent的字段: 于是从config的tableOptions里的he ...
最新文章
- 测试用例设计方法_测试用例设计方法——流程分析法(场景法)
- 在项目中增加自定义icon图标
- 几乎所有的成功都是厚积薄发
- C语言入门基础——Brute-Force算法
- redis 集群_Redis集群管理
- Service的使用
- 使用VNC完毕远程调用图形化
- AD查找相似对象使用进阶
- 21天学通c语言错误,为《21天学通C语言》(第7版)(Sams Teach Yourself C in 21 Days)正名...
- 区块链在版权保护方面的探索与实践
- 通过VBA锁定单元格的值
- oracle 排除节假日,ORACLE 计算节假日
- 免费服务器领取步骤(详细)
- 树型结构总结:二叉查找树、堆、平衡树、2-3查找树、红黑树、B树、B+树
- aria2 linux一键安装,Aria2一键安装及管理脚本,搭建AriaNg前端
- 设置使用 CUDA/显卡 的编号
- matlab mafdr,matlab FDR校正
- c语言游戏(C语言游戏装备)
- PTA 7-114 用if-else语句编程百分制成绩转换为五分制成绩
- proxmox ve 7.2 AMD显卡直通 网卡驱动 调度器