单元测试 – 如何在angularjs单元测试中触发keyup/keydown事件?
发布时间:2020-12-17 08:37:54 所属栏目:安全 来源:网络整理
导读:我想单元测试一个模拟占位符的指令,其中输入值仅在keyup / down事件时清除。 您需要以编程方式创建事件并触发它。这样做包括jQuery的单元测试是非常有用的。例如,你可以这样写一个简单的实用程序: var triggerKeyDown = function (element,keyCode) { var
我想单元测试一个模拟占位符的指令,其中输入值仅在keyup / down事件时清除。
您需要以编程方式创建事件并触发它。这样做包括jQuery的单元测试是非常有用的。例如,你可以这样写一个简单的实用程序:
var triggerKeyDown = function (element,keyCode) { var e = $.Event("keydown"); e.which = keyCode; element.trigger(e); }; 然后在你的单元测试中使用它: triggerKeyDown(element,13); 你可以在这里的http://angular-ui.github.io/bootstrap/项目中看到这个技术的行动:https://github.com/angular-ui/bootstrap/blob/master/src/typeahead/test/typeahead.spec.js 免责声明:让我们在这里精确:我不提倡使用jQuery与AngularJS!我只是说,它是一个有用的DOM操作实用程序,用于编写测试与DOM交互。 要使上面的代码工作没有jQuery,更改: $.Event('keydown') 至: angular.element.Event('keydown') (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |