【问题标题】:Why does adding a reference to jasmine.js break my ReSharper test?为什么添加对 jasmine.js 的引用会破坏我的 ReSharper 测试?
【发布时间】:2014-03-24 21:34:53
【问题描述】:

我正在尝试使用 Resharper 通过 phantomJS [Headless] 和 Visual Studio 运行我的 Javascript 单元测试。当我在我的文件中包含对茉莉花的引用时,它会破坏测试。但是,如果我注释掉第一行,它会起作用。为什么?我的测试是用 jasmine 语法编写的...

/// <reference path="../jasmine/jasmine.js"/>  <-- when I comment this, tests work
/// <reference path="../angular-loader.js"/>
/// <reference path="../angular-mocks.js"/>
/// <reference path="../angular.js"/>
/// <reference path="../teststuff/app.js"/>


describe('jasmineApp', function () {

    var scope = {}; 
    scope.name = '';

    beforeEach(angular.mock.module('jasmineApp'));

    beforeEach(angular.mock.inject(function ($rootScope, $controller) {
        scope = $rootScope.$new();
        $controller('jasmineAppController', { $scope: scope });
    }));

    it('name is eric', inject(function () {
        expect(scope.name).toEqual("eric"); 
    }));

});

【问题讨论】:

    标签: javascript visual-studio resharper jasmine


    【解决方案1】:

    我认为这是因为 Angular 默认与 Karma 捆绑在一起 - 并且 Karma 支持开箱即用的 Jasmine 语法测试。

    某处可能出现框架崩溃...

    因此,只需删除包含 Jasmine(您已经注释掉的行)就可以了。

    【讨论】:

    • 我不确定这是不是这个原因——现在我们删除了对 jasmine.js 的引用,ReSharper 抱怨我们测试中的 Jasmine 引用(蓝色波浪下划线)。如果它与 AngularJS 捆绑在一起,并且引用了 AngularJS 脚本,那么 R# 不应该抱怨缺少引用。但我会让测试运行者在任何一天都在蓝色波浪上工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-31
    • 2017-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多