8

我有 angularJs 控制器

angular.module('App.ctrl.guests', [])
    .controller('guestsController', ['$scope', '$http', '$location', '$timeout', 'guestsService', function ($scope, $http, $location, $timeout, guestsService) {
        $scope.tiles = [];
    }])

和茉莉花测试

/// <reference path="~/Scripts/angular.js" />
/// <reference path="../../ProjectWeb/Scripts/app/guests/guestsCtrl.js" />
/// <reference path="~/Scripts/angular-mocks.js" />
/// <reference path="~/Scripts/jasmine.js" />
'use strict';
describe('App.ctrl.guests', function () {
    var scope, controller;
    beforeEach(function () {
        module('App.ctrl.guests')
    });
    beforeEach(inject(function ($rootScope, $controller) {
        scope = $rootScope.$new();
        controller = $controller('guestsController', {
            $scope: scope
        });
    }));

    it('should have empty array', function () {
        expect(scope.tiles).toBe([]);
    });
})

每次我在 Visual Studio chutzpah 中运行时,我都会得到:

ReferenceError:找不到变量:文件中的模块:///.../JasmineTests/guestsControllerTest.js(第 5 行)

ReferenceError:找不到变量:注入文件:///.../JasmineTests/guestsControllerTest.js(第 12 行)

参考 angular.js 和 jasmine 是否有问题不知道什么是模块/注入关键字?这是我第一次进行 js 测试:/

4

2 回答 2

4

我在这篇文章中发现了如何拖放 JavaScript 文件以进行测试和更正路径。

于 2014-11-25T10:51:11.363 回答
0

几分钟前,我在我们的 TFS 构建服务器上遇到了这个确切的异常。事实证明,当“属性”对话框中的“复制到输出目录”选项设置为“不复制”以外的其他选项时,也会发生此异常。在我们的情况下,测试了 \bin 文件夹中的几个文件,这导致引用路径不正确。

于 2014-09-01T14:34:40.163 回答