Jasmine Karme单元测试-AngularJs指令未得到编译

问题描述

我在测试angularjs指令时遇到问题。以下是我的测试:

it('should be defined',inject(function($compile,$rootScope){
        $scope = $rootScope.$new();
        element = $compile('<div><some-directive-name></some-directive-name></div>')($scope);
        $scope.$digest();
        console.log(element[0].outerHTML);
        expect(element.html()).toBe(template);
    }));

console.log的输出

'<div class="ng-scope"><some-directive-name></some-directive-name></div>'

它应该是 someDirectiveName 指令

的模板URL

指令:

angular.module('app.moduleName').directive('someDirectiveName',function (someService) {
    return {
        restrict: 'EA',replace: true,templateUrl: 'app/path/partials/some-directive-name.tpl.html',scope: true,link: function (scope,element) {
   ......
   ......

解决方法

实际上,我没有任何例外。但是我发现了问题。我没有将js指令文件的引用添加到业力配置中。这是一个愚蠢的错误