2014-01-13 2 views
8

Я новичок в yoman и всех инструментах, которые он использует. Я создал тестовый проект в йомене и попытался запустить тестовую спецификацию в жасмине. Я установил плагин жасмин с помощью CMD:получение ReferenceError: Невозможно найти переменную: angular

НПХ установить черновой-вно-жасмин --save-DEV

Добавлена ​​задачу жасмина в Gruntfile.js

jasmine: { 
     src: '<%= yeoman.app %>/scripts/{,*/}*.js', 
     specs: 'test/spec/{,*/}*.js' 
    }, 

когда я бегу задача жасмин хрюкать жасмин я получаю следующее сообщение об ошибке: -

E:\Personal Projects\yeoman-projects\test-app>grunt jasmine 
Running "jasmine:src" (jasmine) task 

Testing jasmine specs via phantom 
ReferenceError: Can't find variable: angular at 
..\..\..\E:\Personal%20Projects\yeoman-projects\test-app\app\scripts\app.js:3 

ReferenceError: Can't find variable: angular at 
..\..\..\E:\Personal%20Projects\yeoman-projects\test-app\app\scripts\controll 
ers\main.js:3 

Ниже мой main.js

'use strict'; 

angular.module('testAppApp') 
    .controller('MainCtrl', function ($scope) { 
    $scope.awesomeThings = [ 
     'HTML5 Boilerplate', 
     'AngularJS', 
     'Karma' 
    ]; 
    }); 

и app.js

'use strict'; 

angular.module('testAppApp', [ 
    'ngRoute' 
]) 
    .config(function ($routeProvider) { 
    $routeProvider 
     .when('/', { 
     templateUrl: 'views/main.html', 
     controller: 'MainCtrl' 
     }) 
     .otherwise({ 
     redirectTo: '/' 
     }); 
    }); 

я упускаю что-то?

Спасибо, Парикшит

+1

Эта проблема также может возникать при включении углового из 'https: // code.angularjs.org /'. Вместо этого включите его локально или из API размещенных библиотек Google. –

ответ

9

под жасмин ЦСИ вы должны включить angular.js. На данный момент вы включили только собственные скрипты. Если вы используете yaoman, они обычно используются в папке с именем bower_components/angle.

+0

Также убедитесь, что вы ссылаетесь на angular.js перед своими файлами сценария приложения – Mathew

0

Чтобы сохранить ваши тестовые файлы в чистоте, вы должны использовать для этого options.vendor.

jasmine: { 
    src: '<%= yeoman.app %>/scripts/{,*/}*.js', 
    specs: 'test/spec/{,*/}*.js', 
    vendor: 'path/to/angular.js' 
}, 

See the documentation.

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