Я новичок в угловом и недавно использовал «yo angular-fullstack» для создания моей рамки. Это хорошо работает. Но сегодня я обнаружил проблему вокруг тестирования новой директивы.Угловое испытание ползучести кажется хрупким?
Когда было создано первое - все было в порядке. Затем, проанализировав файлы с помощью intellij, я обнаружил, что недавно добавленная новая строка в файле template.html привела к сбою тестирования. Это кажется очень странным ... т. Е. Если в конце файла testit.html есть дополнительная строка в новой строке, тест не должен прерываться.
Действительно ли необходимо выполнить обрезку() или некоторые из них в тесте ??? Любая помощь будет оценена по достоинству. Я новичок в угловой, но я также хочу убедиться, что у меня нет проблемы где-то еще в коде. Другие видели это? Или есть простой способ вызвать угловое высылку подробной или отладочной информации?
Вот относительная часть неисправного выхода теста ворчание:
PhantomJS 1.9.8 (Linux) Directive: testit should make hidden element visible FAILED
Expected 'this is the testit directive
' to be 'this is the testit directive'.
соответствующие файлы:
testit.directive.js:
'use strict';
angular.module('trackerFooApp')
.directive('testit', function() {
return {
templateUrl: 'app/testit/testit.html',
restrict: 'EA',
link: function (scope, element, attrs) {
}
};
});
tesit.directive.spec .js:
'use strict';
describe('Directive: testit', function() {
// load the directive's module and view
beforeEach(module('trackerFooApp'));
beforeEach(module('app/testit/testit.html'));
var element, scope;
beforeEach(inject(function ($rootScope) {
scope = $rootScope.$new();
}));
it('should make hidden element visible', inject(function ($compile) {
element = angular.element('<testit></testit>');
element = $compile(element)(scope);
scope.$apply();
expect(element.text()).toBe('this is the testit directive');
}));
});
testit.html:
<div>this is the testit directive</div>
Спасибо вам за помощь!
Возможно, это не связано, но это - 'module ('app/testit/testit.html')' выглядит совершенно неправильно. У вас нет модуля под этим именем. – Phil
Да - этот набор файлов находится в структуре генерации «yo angular-fullstack», которая отдельно обрабатывает клиентский и серверный разделы. Таким образом, фактическое приложение определено в другом месте, а затем инъекция «магически» захватывает эту директиву. – JoelParke