使用angularjs单元测试的karma-browserify:'module'上的名称冲突导致'object is not function'错误

zay*_*uan 2 angularjs browserify karma-runner

我有一个角度应用程序,我正在测试karma单元测试,我试图添加karma-browserify,以便我可以在我的单元测试中需要npm模块.

一旦我将browserify预处理器添加到我的karma.conf.js配置文件中,我的测试就开始破坏,即使我还没有尝试过任何模块.

我收到以下错误:

object is not a function
Run Code Online (Sandbox Code Playgroud)

如果我按照跟踪,我看到导致错误的行是在调用'module'的browserify捆绑的js临时文件中

zay*_*uan 8

刚刚看到一个带有相同问题的老帖子,所以我也在那里回答:
angular mock`module`导致'[Object object]不是函数'

更改调用以在单元测试中加载应用程序:

beforeEach(module("app"))
Run Code Online (Sandbox Code Playgroud)

至:

beforeEach(window.angular.mock.module("app"))
Run Code Online (Sandbox Code Playgroud)

这是一个记录在案的问题,似乎不太可能修复:
https://github.com/xdissent/karma-browserify/issues/10 我希望这不会像你这样花费你一天.