1、框架选型
- jasmine - BDD风格测试框架, - 开箱即用 - 自带断言及mock功能 - 比较老,坑基本都被踩过 - 不易扩展 |
- Jest - 基于 jasmine, - 开箱即用配置少,API简单 - 支持断言和仿真 - 支持快照测试 - 对 react 友好 - 较新,社区不十分成熟 |
- mocha - tj出品, - 可运行在node端和浏览器端 - 需要自己搭配断言库和仿真等 - 可使用快照测试,但依然需要额外配置 - 需要较多配置 - 社区成熟用的人多 - 灵活,可配置
|
- Qunit - 出自jquery, - 后独立出来不再依赖jquery, - 已经被其他框架从各方面超越 |
- intern - SitePen公司推出 - 功能比较齐全 - 使用人少,比较小众 |
2、断言库
- chai - 目前流行的断言库, - 支持BDD、TDD两种风格,全面 |
- should - TJ出品, - API予以较好, - 文档不足 |
- expect - should的子集, - 没有亮点 |
- assert - node核心模块, - node运行环境可以直接使用, - 语法弱 |
3、mock库
- sinon.js - 提供spies、stubs、mocks,还有fake timers、fake XmlHttpRequest 等功能 |
经过选型,最终决定使用
mocha + chai + sinon |
原文:https://www.cnblogs.com/slightFly/p/13662172.html