因此,iam试图在公司项目上开始实施单元测试,但是iam只是一个初学者,当我尝试加载在一个非常简单的模块中进行的第一个测试时,iam面临一个问题。 / p>
我收到的错误是:
毕竟发生了错误 错误:[$ injector:nomod]模块'tm2About'不可用!您可能拼错了模块名称,或者忘记了加载它。如果注册 一个模块,确保您将依赖项指定为第二个 论点。
这是test.spec.js
describe('Testes primarios', function() { beforeEach(angular.module('tm2About')); beforeEach(angular.module('tm2AboutComponent')); var ctrl, scope; beforeEach(inject(function($controller, $rootScope) { scope = $rootScope.$new(); ctrl = $controller('aboutController', { $scope: scope }); })); it('deve funcionar', function() { expect(ctrl).toBeDefined(); }); })
我相信错误可能在这里,但不确定。
这是模块控制器
import tm2Logo from "../../../assets/images/defaults/tm2_logo.svg" import loading from "../../../assets/images/loading.gif" tm2AboutCtrl.$inject = ['$rootScope', '$translate', 'toaster', 'aboutService']; function tm2AboutCtrl($rootScope, $translate, toaster, aboutService) { var vm = this; // vm.buildVersion = "@version@"; vm.buildVersion = "0.3.9"; vm.buildDate = "@timestamp@"; vm.img = tm2Logo; vm.imageLogo = loading; vm.$onInit = function() { vm.date = new Date(); vm.layout = JSON.parse(sessionStorage.getItem('configLayout')); vm.setLayout(); }; vm.setLayout = function() { vm.imageLogo = vm.layout.imageBusinessName ? vm.layout.imageBusinessName : vm.img; } } export {tm2AboutCtrl}
那么,我在模块加载过程中忘记了什么吗?