我试图设置测试,我们在哪里使用Angular 1.5,TSify和Karma。我非常接近,但我运行到,我还没有完全得到正确的问题:Angular,Karma,tsify,woes
我下面这里所描述的设置:https://github.com/cmlenz/tsify-test(这个例子不包括角)
我收到一个错误angular-mocks:“不能设置属性'模拟'的未定义”
这必须是一个时间的事情或范围的事情 - 无论角度嘲笑加载太快,或browserify是包含角度变量的范围,并且嘲笑无法看到它。不知道。
这里是我的karma.conf.js文件的相关部分:
frameworks: ['browserify', 'jasmine'],
files: [
'https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js',
'./node_modules/angular-mocks/angular-mocks.js',
'./modules/**/*.spec.ts'
],
exclude: [],
preprocessors: {
'**/*.ts': 'browserify'
},
browserify: {
debug: true,
plugin: [
['tsify']
]
},
这必须是与我加载嘲弄的方式 - 它不使用我的角度的应用程序,只需测试,所以必须与它有关。
任何提示? angular
后加上当前噶configuarion要加载
你的'files'数组应该包含** all **所需的测试文件。 'angular.js'以及你的应用程序文件在哪里? – Phil
从您的配置中,很显然'角模拟'与NPM一起安装。如果'angular'也与NPM一起安装,并且在'.ts'文件中通过'require'包含在捆绑包中,那很可能是问题,因为'angular-mocks'需要在'angular'之后加载。 – cartant
@Phil Browserify将所有文件(包括供应商文件)连接成一个包。在我工作的例子中,他们只是在预处理器部分注册了**/*。ts glob。如果那不对,我可以改变它。它应该是什么? (我假设我不应该特别指向每个供应商文件,因为browserify会将这些文件打包到捆绑包中)。 – JMarsch