component测试耗时的原因
来源:2-13 任务列表之任务组件

5994_珍
2019-06-27
老师你好,为什么component一个文件的测试跑的时间会很久?10 到100秒不等,而service,effect,reducer等的测试文件跑的时间就很稳定都很短,没有超过1s的。
我有做过很多预想以及测试,我发现在component的测试文件里面要imports NgZorroModule,直接引入了之后,一个空的component跑一个测试要花1到3秒,而如果不引入这个,引入其他的比如说FormModule,个空的component跑一个测试只花的到100ms?
如果我可以大胆的得出一个结论是,我们不要直接imports 一个整的NgZorroModule,而是用里面什么就引入什么,比如用Table就引入Table?对吗?
或者,让component测试耗时的,还有其他原因?
希望老师指点迷津,谢谢!
写回答
1回答
-
接灰的电子产品
2019-06-27
组件测试需要构建的东西比较多,一般而言,service 、effect、reducer 中都提供了 mock 或者压根就是纯函数,所以不需要构建。但组件不同,它依赖很多东西,这些东西如果不 mock 的话,加载就会很慢,而且最慢的是,为了让你可以测试界面渲染,这个测试使用了无头的浏览器内核,综上组件测试肯定慢。可以看 zorro 团队怎么做的测试
https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/components/alert/nz-alert.spec.ts
00
Angular打造企业级协作平台,让你在Angular领域中出类拔萃
全网首个介绍官方 Material 组件库用法与 Redux 在 Angular 中的应用
998 学习 · 536 问题
相似问题