我想测试我的角度控制器及其模板。但没有找到加载模板的方法。即使我正在使用控制器的范围编译我的模板,我也无法在模板中找到元素。
我的控制器:
angular.module("myapp").controller("controller", ['$scope', controller]);
function controller($scope) {
//Code
}
模板:
<html><body>
<p id="test">This is test content</p>
</body></html>
我的测试用例:
it("Testing ui elements", function(){
var controller = createController();
expect($scope.loading).toBeFalsy();
var element = $compile(listTemplate)($scope);
$scope.$digest();
console.log(element.find('#test').html());
});
输出:
LOG: undefined
答案 0 :(得分:0)
我改变了我的创建控制器方法,如下所示。
createController = function() {
var element = angular.element("<div id='controller' ng-controller='controller'></div>");
element.append(listTemplate);
$compile(element)($scope);
angular.element('body').append(element);
$scope = element.scope();
};
现在我可以通过ID获取元素$(&#39; #test&#39;)。html();