Jest和混合Angular / AngularJS应用程序

时间:2017-12-31 09:03:25

标签: angularjs angular unit-testing typescript jestjs

我考虑使用jest来测试我的混合应用程序(Angular + AngularJS)。我使用jest-preset-angular进行角度测试,但我还需要angular-mocks进行AngularJS测试。

问题是当我在jest-preset-angular中导入angular-mockssetupJest.ts时,所有测试(Angular和AngularJS)都会因Cannot read property '$injector' of null错误而失败(来自{{1} }})。

如果我仅导入angular-mocks所有Angular测试都通过,如果我只导入jest-preset-angular,则所有AngularJS测试都会通过。

如何让它一起工作?

的package.json:

angular-mocks

setupJest.ts:

"jest": {
    "preset": "jest-preset-angular",
    "setupTestFrameworkScriptFile": "<rootDir>/src/setupJest.ts"
}

1 个答案:

答案 0 :(得分:1)

事实证明这个命令很重要 在angular-mocks之前导入jest-preset-angular可解决问题:

import 'angular';
import 'angular-mocks';
import 'jest-preset-angular';