【发布时间】:2016-03-30 11:08:20
【问题描述】:
我会尝试用一点抽象来解决这个问题,因为深入代码细节是没有用的。
我有一个 Angular 模块,它分为 2 个源文件,例如 source1.js 和 source2.js。然后我有 3 个单元测试文件,旨在测试 3 个角度服务/工厂/提供者。
项目布局如下:
root
|
-dist
|
-source.min.js
-src
|
-source1.js
-source2.js
-tests
|
-unit
|
-service1.js
-service2.js
-service3.js
所有测试,使用 karma 和 jasmine 运行,通过并按预期工作。看看这个 karma 配置就明白了:
files: [
'bower_components/angular/angular.min.js',
'bower_components/angular-mocks/angular-mocks.js',
'src/*.js',
'tests/unit/*.js'
],
接下来我将 gulpjs 的 source1 和 source2 缩小为 source.min.js 并尝试使用缩小的文件运行测试,因此我将 karma 配置更改如下:
files: [
'bower_components/angular/angular.min.js',
'bower_components/angular-mocks/angular-mocks.js',
'dist/*.js', // <--- see here.
'tests/unit/*.js'
],
使用此配置,所有测试都因角度依赖注入而失败 - 看起来提供程序没有被解析。
什么可能导致这种情况?我的意思是,源代码应该是一样的。
【问题讨论】:
-
您看到了什么错误?您的 source.min.js 是否在您的网站上正确运行?
标签: javascript angularjs gulp karma-jasmine