Angular单元测试之事件触发的实现


Posted in Javascript onJanuary 20, 2020

=在angular项目中时常有一些click、input、focusout等事件操作,那么如何在单元测试中触发这些事件呢?

一、触发Click事件

// 方法一
const ele = fixture.debugElement.query(By.css("#id"));
ele.triggerEventHandler('click', null)
fixture.detectChanges(); // 更新视图

// 方法二
const ele = fixture.nativeElement.querySelector("#id");
ele.click();
fixture.detectChanges(); // 更新视图

二、触发input事件

触发input事件,需要在获取到input元素后,先给输入框绑定值,然后去触发输入事件,最后更新视图。

const input = fixture.nativeElement.querySelector("#input");
input.value = 'abc';
input.dispatchEvent(new Event('input'));
fixture.detectChanges(); // 更新视图

二、触发focusout事件

const input = fixture.nativeElement.querySelector("#input");
input.dispatchEvent(new Event('focusout'));
fixture.detectChanges(); // 更新视图

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript TextArea动态显示剩余字符
Oct 22 Javascript
图片无缝滚动代码(向左/向下/向上)
Apr 10 Javascript
js点击出现悬浮窗效果不使用JQuery插件
Jan 20 Javascript
node.js基于express使用websocket的方法
Nov 09 Javascript
Javascript实现购物车功能的详细代码
May 08 Javascript
AngularJS标签页tab选项卡切换功能经典实例详解
May 16 Javascript
微信小程序开发实现的IP地址查询功能示例
Mar 28 Javascript
vue路由教程之静态路由
Sep 03 Javascript
Vue使用NProgress的操作过程解析
Oct 10 Javascript
jQuery 动态粒子效果示例代码
Jul 07 jQuery
JavaScript this关键字指向常用情况解析
Sep 02 Javascript
Ant Design Vue table中列超长显示...并加提示语的实例
Oct 31 Javascript
vue elementui 实现搜索栏公共组件封装的实例代码
Jan 20 #Javascript
D3.js 实现带伸缩时间轴拓扑图的示例代码
Jan 20 #Javascript
阿望教你用vue写扫雷小游戏
Jan 20 #Javascript
JavaScript Window窗口对象属性和使用方法
Jan 19 #Javascript
浅谈webpack和webpack-cli模块源码分析
Jan 19 #Javascript
js原生map实现的方法总结
Jan 19 #Javascript
Node.js操作MongoDB数据库实例分析
Jan 19 #Javascript
You might like
动漫女神老婆无限好,但日本女生可能就不是这么一回事了!
2020/03/04 日漫
由php if 想到的些问题
2008/03/22 PHP
解析php中curl_multi的应用
2013/07/17 PHP
php中get_magic_quotes_gpc()函数说明
2017/02/06 PHP
Jquery中Ajax 缓存带来的影响的解决方法
2011/05/19 Javascript
js、jquery图片动画、动态切换示例代码
2014/06/03 Javascript
Angularjs 基础入门
2014/12/26 Javascript
NodeJS学习笔记之Http模块
2015/01/13 NodeJs
JQuery使用index方法获取Jquery对象数组下标的方法
2015/05/18 Javascript
javascript实现信息增删改查的方法
2015/07/25 Javascript
js实现select二级联动下拉菜单
2020/04/17 Javascript
jQuery实现图像旋转动画效果
2016/05/29 Javascript
JS简单获取当前年月日星期的方法示例
2017/02/07 Javascript
利用node.js爬取指定排名网站的JS引用库详解
2017/07/25 Javascript
Vue分页器实现原理详解
2019/06/28 Javascript
vue和小程序项目中使用iconfont的方法
2020/05/19 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
[01:48]帕吉至宝加入游戏,遗迹战场现“千劫神屠”
2018/04/07 DOTA
Python 过滤字符串的技巧,map与itertools.imap
2008/09/06 Python
python计算文本文件行数的方法
2015/07/06 Python
计算机二级python学习教程(3) python语言基本数据类型
2019/05/16 Python
在Python中实现函数重载的示例代码
2019/12/12 Python
基于打开pycharm有带图片md文件卡死问题的解决
2020/04/24 Python
Python pathlib模块使用方法及实例解析
2020/10/05 Python
关于webview适配H5上传照片或者视频文件的方法
2020/11/04 HTML / CSS
上班玩游戏检讨书
2014/02/07 职场文书
经典婚礼主持开场白
2014/03/13 职场文书
员工安全生产承诺书
2014/05/22 职场文书
小学校长汇报材料
2014/08/20 职场文书
贯彻落实“八项规定”思想汇报
2014/09/13 职场文书
2015年先进个人自荐书
2015/03/24 职场文书
赤壁观后感(2)
2015/06/15 职场文书
广播体操比赛主持词
2015/06/29 职场文书
我的中国梦心得体会范文
2016/01/05 职场文书
技术入股协议书
2016/03/22 职场文书
Java 定时任务技术趋势简介
2022/05/04 Java/Android