Angular单元测试总结

一直以来都是后台写单元测试,这周初次使用前台单元测试,出错是必然的浏览器

问题

  • 使用本身写的组件或者管道是报错

clipboard.png

须要在前台单元测试spec.ts文件中加入本身写的组件或管道,例如:框架

clipboard.png

  • 使用框架中自带的组件

clipboard.png

须要在前台单元测试spec.ts文件中加入报错信息提示的组件,例如:单元测试

  • [object ErrorEvent] thrown [对象 错误事件] 被抛出

clipboard.png

这个错误是遇到次数最多的,当时出现这个错误时和张喜硕组长研究查资料搞了大半宿也没解决,最后仍是在潘老师的帮助下解决的,得知ng test 时控制台报错的哪一个文件,不必定是这个文件出错,解决办法以下:测试

  1. 打开单元测试时自动弹出来浏览器的控制台

    clipboard.png

    控制台中,因为http发起请求时,必然发生错误,因此有不少个错误,可是致使单元测试不经过的,只有那些发生了异常,咱们没有传入error的spa

    clipboard.png

    找到Uncaught,点开HttpErrorResponse看一下对应service中的那个服务命令行

  2. 在对应的服务中找到,找到方法(在方法名上右键Find Usages )看谁调用了我。

    clipboard.png

  3. 在订阅的时候,要加入error异常错误

    clipboard.png

加上以后问题解决,单元测试经过。code

总结

单元测试从长期来看,能够提升代码质量,减小维护成本,下降重构难度。可是从短时间来看,加大了工做量,对于进度紧张的项目中的开发人员来讲,可能会成为很多的负担。对象

可是我这里有个疑问:事件

angular单元测试都是用命令行自动生成的,测试和不测试有什么区别?感受加了测试反而更麻烦ip

相关文章
相关标签/搜索