with angularJs 1.0.2我创建了一个简单的指令,它绑定了元素上的click事件。
我试图用testacular进行单元测试
var linked;
beforeEach(inject(function($rootScope, $compile) {
scope = $rootScope.$new();
var widget_definition = '<a href="path" my-directive="">click here</a>';
linked = $compile(widget_definition);
}));
it('chceck logic on click', function() {
var button = linked(scope);
// this doesnt work so I give up :/
button.triggerHandler('click');
});
但是它告诉我按钮元素上没有定义这样的函数。但这已经是jQ(lite)对象了,在其他测试中我可以使用为jQlite定义的方法。
这是一个有角度的错误
答案 0 :(得分:2)
triggerHandler
这是一个不抛出异常{JS-3}的
的JSFiddle 不过,如果您正在处理UI更改,您可能需要进行e2e测试。