前端如何做单元测试?


谢谢邀请!
为什么需要单元测试?

前端如何做单元测试?

文章插图
需要单元测试的场景
理论上任何代码都需要单元测试 。虽然对开发者的能力要求不算太高 。但是会导致开发周期加长 。所以个人理解是高复用率的代码需要单元测试 。比如组件、开源代码、工具等等 。业务代码不太适合做单元测试!
测试框架
karma
jasmine
mocha
jest
前端如何做单元测试?

文章插图
什么是karma?
不是测试框架 。只是一个web服务器 。需要自己配置测试框架 。比如jasmine等
在连接它的浏览器上执行测试代码 。可以做调试 。在本地控制台可以查看单侧结果
可以配置多样的报表
测试框架特点
mocha最流行 。社区最成熟 。需要引入断言库 。简单 。灵活 。支持promise 。也可以添加对generators的支持
jasmine适合tdd测试 。没有依赖 。社区大 。通过‘done’支持async和promise测试
前端如何做单元测试?

文章插图
如何选择框架?
断言库是否好用
【前端如何做单元测试?】测试风格:测试驱动 or行为驱动
对异步是否支持良好
社区是否活跃
测试结果
测试会生成报告 。考虑覆盖率的四个维度
行覆盖率:是否每一行都执行了?
函数覆盖率:是否每个函数都调用了?
分支覆盖率:是否每个if逻辑都执行了?
语句覆盖率:是否每一条语句都执行了?
喜欢我的回答就关注我吧 。有问题可以发表评论 。我们一起学习 。共同成长!

    推荐阅读