我正在尝试使用通过Teaspoon运行的Jasmine在Angular中创建一些单元测试。测试正在运行,但是我有一个简单的测试只是为了测试失败的控制器的存在。我有以下测试设置。
//= require spec_helper require("angular"); require("angular-mocks"); var app = require("./app"); describe("My App",function() { describe("App Controllers",function() { beforeEach(module("app")) it("Should have created an application controller",inject(function($rootScope,$controller){ var scope = $rootScope.$new(); ctrl = $controller("ApplicationCtrl",{ $scope: scope }); })); }) })
请求语句由Browserify处理,它处理我的依赖项,但我也可以挂钩到我用于规范帮助程序的sprockets。
在我需要的应用程序内部
require("angular"); var controllers = require("./controllers"); var app = angular.module("app",[ "app.controllers" ]); exports.app = app;
当我运行此测试时,我得到以下错误
Failure/Error: TypeError: '[object Object]' is not a function (evaluating 'module("aialerts")')
我花了很长时间试图解决这个问题,但我不知道发生了什么。任何帮助赞赏。
我有同样的问题。改变这一行:
beforeEach(module("app"))
至:
beforeEach(angular.mock.module("app"))