为什么我们需要karma-test-shim.js

时间:2017-02-03 12:08:41

标签: .net angular karma-jasmine

目前,我正在学习如何在以下链接中给出的Angular 2设置上设置业力测试。

https://github.com/angular/quickstart

但我对使用karma-test-shim.js文件这一事实并不十分清楚。

有人可以开导我这个吗?

1 个答案:

答案 0 :(得分:4)

karma-test-shim.js文件用于使用SystemJS导入spec文件。启动Karma测试运行器时,不会将任何文件添加为脚本。它们需要通过SystemJS加载。

所有该文件都使用.spec命名约定过滤所有规范文件,然后加载它们。只需要使用SystemJS加载spec文件,因为所有spec文件都已导入导入Angular文件的应用程序文件。这些规范文件在被SystemJS加载后立即运行

同样在该文件中是Angular测试文件的SytemJS映射。例如

'@angular/core/testing': 'npm:@angular/core/testing/core-testing.umd.js'

systemjs.config.js文件映射了用于应用程序的所有非测试Angular模块。我们不会在其中包含测试模块,因为测试文件不需要在应用程序中映射,仅用于测试。

另见: