2017-02-07 10 views
0

Я пытаюсь написать модульные тесты для моего приложения Angular 2. Я использую Jasmine, Chutzpah в Visual Studio 2015. Когда тест не имеет каких-либо зависимостей или требований, тогда тест работает. Но когда тест имеет один, тест не запускается.Жасмин, Chutzpah Ошибка: ReferenceError: Не могу найти переменную: require

В выходной, когда я пытаюсь запустить тесты я получаю:

Error: ReferenceError: Can't find variable: require at global code in ...\scripts\_references.js 

Error: ReferenceError: Can't find variable: jQuery at global code in ...\scripts\_references.js 

В Reference.js выглядит следующим образом:

/// <autosync enabled="true" /> 
/// <reference path="../gulpfile.js" /> 
/// <reference path="bootstrap.js" /> 
/// <reference path="jasmine.js" /> 
/// <reference path="jasmine/boot.js" /> 
/// <reference path="jasmine/console.js" /> 
/// <reference path="jasmine/jasmine.js" /> 
/// <reference path="jasmine/jasmine-html.js" /> 
/// <reference path="jasmine-html.js" /> 
/// <reference path="jasmine-samples/player.js" /> 
/// <reference path="jasmine-samples/playerspec.js" /> 
/// <reference path="jasmine-samples/song.js" /> 
/// <reference path="jasmine-samples/spechelper.js" /> 
/// <reference path="jquery.validate.js" /> 
/// <reference path="jquery.validate.unobtrusive.js" /> 
/// <reference path="jquery-1.10.2.js" /> 
/// <reference path="modernizr-2.6.2.js" /> 
/// <reference path="reflect.js" /> 
/// <reference path="respond.js" /> 
/// <reference path="ScriptsApp/app.component.spec.js" /> 
/// <reference path="shim.min.js" /> 
/// <reference path="system.src.js" /> 
/// <reference path="systemjs.config.js" /> 
/// <reference path="zone.js" /> 

Я думаю, что есть что-то неправильно в этом файле или что-то отсутствует.

ответ

0

Как я, _Reference.js не был прав. Я изменил:

/// <autosync enabled="false" /> 
 

 
/// <reference path="node_modules\npm\node_modules\init-package-json\node_modules\promzard\test\exports.js" /> 
 

 

 
/// <reference path="jquery-1.10.2.js" /> 
 
/// <reference path="jquery.validate.js" /> 
 
/// <reference path="jquery.validate.unobtrusive.js" /> 
 

 
/// <reference path="jasmine.js" /> 
 
/// <reference path="jasmine/boot.js" /> 
 
/// <reference path="jasmine/console.js" /> 
 
/// <reference path="jasmine/jasmine.js" /> 
 
/// <reference path="jasmine/jasmine-html.js" /> 
 
/// <reference path="jasmine-html.js" /> 
 

 
/// <reference path="bootstrap.js" /> 
 
/// <reference path="modernizr-2.6.2.js" /> 
 
/// <reference path="reflect.js" /> 
 
/// <reference path="respond.js" /> 
 

 
/// <reference path="shim.min.js" /> 
 
/// <reference path="system.src.js" /> 
 
/// <reference path="systemjs.config.js" /> 
 
/// <reference path="zone.js" /> 
 

 
/// <reference path="ScriptsApp/app.component.spec.js" />

Самые ошибки исчезают, но 1 ошибка остается:

Error: ReferenceError: Can't find variable: require at global code in \scriptsapp\app.component.spec.js 

Может быть, что я нужна дополнительная ссылка как-то?

Edit:

Мои app.component.spec.ts выглядит следующим образом:

import { AppComponent } from "./app.component.js"; 
 

 
describe('MyList Tests',() => { 
 
\t let list: AppComponent; 
 
\t let test: 0; 
 

 
\t beforeEach(() => { 
 
\t \t list = new AppComponent(); 
 
\t \t test = 0; 
 
\t }); 
 

 
\t it('Should 3 should be 5',() => { 
 
\t \t expect(list.hero.name.length).toBe(5); 
 
\t \t expect(5).toBe(3); 
 
\t }); 
 
});

И это .ts генерирует app.component.spec.js:

"use strict"; 
 
var app_component_js_1 = require("./app.component.js"); 
 
describe('MyList Tests', function() { 
 
    var list; 
 
    var test; 
 
    beforeEach(function() { 
 
     list = new app_component_js_1.AppComponent(); 
 
     test = 0; 
 
    }); 
 
    it('Should 3 should be 5', function() { 
 
     expect(list.hero.name.length).toBe(5); 
 
     expect(5).toBe(3); 
 
    }); 
 
}); 
 
//# sourceMappingURL=app.component.spec.js.map

 Смежные вопросы

  • Нет связанных вопросов^_^