运行Visual Studio我有以下 Jasmine 测试。

'use strict';

///<reference path="jasmine.js"/>
///<reference path="../../Scripts/angular.min.js"/>
///<reference path="../../Scripts/angular-route.min.js"/>
///<reference path="../../Scripts/angular-mocks.js"/>
///<reference path="../application.js"/>

describe('StatusPage Tests', function () {
    describe('Application Functions', function () {
        var location;

        beforeEach(module("StatusApplication"));

        beforeEach(inject(function($location) {
            location = $location;
        }));

        it('DetermineRootUrl_Application_RootUrl', function () {
            var result = DetermineRootUrl(location);

            var expectedResult = 'https://localhost/OK59SP1/';
            expect(expectedResult).toBe(expectedResult);
        });
    });
});

当我尝试使用angular-mock函数时,问题似乎出现了。
一旦包含任何beforeEach代码块,测试就不会运行,并且我返回的唯一消息是“遇到了声明异常”

我不确定我在做什么错,有什么建议吗?
我检查了所引用文件的路径,它们是正确的。

最佳答案

当我直接在jest内部使用expect时,这在describe中发生了。 expect应该在it内部调用(或其别名,例如xtesttest)

describe('a', () => {
   expect(1).toEqual(0); /// encountered a declaration exception

   it('b', () => {
      expect(1).toEqual(0); /// works fine
   });
});

关于angularjs - Jasmine 遇到声明异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22692993/

10-11 23:45