【问题标题】:angularjs triggerHandler is not firing binded event in unit testangularjs triggerHandler 未在单元测试中触发绑定事件
【发布时间】:2012-12-05 09:14:11
【问题描述】:

使用 angularJs 1.0.2 我创建了绑定到元素上的点击事件的简单指令。

我尝试用 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 定义的方法。

这是角度的错误吗??

【问题讨论】:

    标签: unit-testing angularjs angular-scenario


    【解决方案1】:

    triggerHandler 被添加到 1.0.3

    这是一个不会抛出异常的 JSFiddle http://jsfiddle.net/jaimem/c5Tfw/1/

    顺便说一句,如果您正在处理 UI 更改,您可能需要进行 e2e 测试。

    【讨论】:

    • 我们为此进行了 selenium 测试,但有时最好有简单的单元测试来触发逻辑。无论如何感谢您的回答
    猜你喜欢
    • 2015-04-17
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-08
    • 2010-12-26
    相关资源
    最近更新 更多