20

2020年值得你去尝试的JavaScript测试框架

 4 years ago
source link: http://developer.51cto.com/art/202001/609185.htm
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

StateOfJS是一个关于JavaScript的年度调查,今年参与调查的开发者超过了21000个,通过StateOfJS可以看到JavaScript在整个年度中的趋势发展,这些数据节点包括前端Web框架、数据库、移动框架、构建工具和JavaScript测试工具等。

yq6Bjen.jpg!web

这是一个非常全面的JavaScript调查,除了StateOfJS还有其他非常流行的调查,比如StackOverflow developer survey,它就吸引了10万多的用户参与调查。Jetbrain的开发者生态系统报告也相当全面,参与调查的人数多达6000多。

根据这些报告,以下是2019年最受JavaScript开发者青睐的测试工具。

1、Jest

rA3imm2.jpg!web

Jest是Facebook团队构建和维护的JavaScript测试框架,基于Jasmine的JavaScript单元测试框架。Jest在2018年接受度非常高,今年在JavaScript社区更是如此,根据Github的数据,目前超过150万个项目在使用Jest。

在过去的一年里继续使用Jest的用户占比从39%飙升至61%,这是一个周期性的增长率,从2017年到2018年一直在增长,不过,对Jest感兴趣的人数比例也下降了,这个数字从29%下降到22%。

2、Mocha

7JnqAfV.jpg!web

Mocha是近年来使用量最多的JavaScript测试框架之一,除了庞大的生态系统,Mocha还有完善的文档可供参考。Mocha非常灵活,对许多扩展都是支持的,根据Github的数据,Mocha已经被90多万个项目使用。

根据调查显示,在过去的一年里,继续使用Mocha的用户占比从39%飙升至42%,大约8%的受访者没有听说过Mocha。

3、Storybook

F3yIb2U.jpg!web

Storybook是一个UI组件的开发环境。通过它用户可以查看每个组件的不同状态,交互式开发、测试组件,它在Github上拥有庞大的用户群,Storybook的用户留存率在2019年度翻了一番,从15%增加到32%,对其感兴趣的用户也从23%增长至26%。

4、Cypress

6zAJVbB.jpg!web

Cypress是一个快速可靠的JavaScript测试工具,它基本上是将测试注入到Web应用程序中去,Cypress同样提供了一个清晰的文档,目前,Cypress最大的竞争对手是一个名为TestCafe的测试框架。

根据Github数据显示,目前使用Cypress的用户已经超过2.5万个,用户留存率为23%。

5、Enzyme

MFjAvay.jpg!web

Enzyme来自airbnb公司,是一个用于React的JavaScript测试工具,方便你判断、操纵和历遍React Components输出。

Enzyme的API通过模仿jQuery的API ,使得DOM操作和历遍很灵活、直观。Enzyme 兼容所有的主要测试运行器和判断库,文档和例子使用mocha和chai。在2019年度,Enzyme的用户留存率从20%上升到23%

6、Ava

b26jaiZ.jpg!web

Ava一个简约的测试库,AVA具有简洁的API,它最大的优势是 Java 的异步特性和并发运行测试, 这反过来提高了性能。根据GitHub的数据,目前有47000个项目在使用它,去年,大约72%的JavaScript开发人员听说过Ava。今年,这一数字降至69%,但是用户留存率则上升至5%。

7、Jasmine

qIvAbia.jpg!web

Jasmine 是一款 JavaScript测试框架,它不依赖于其他任何 JavaScript组件,因此,它适合于网站、Node.js项目或任何JavaScript可以运行的地方。根据调查,在2019年度,Jasmine的用户留存率略有上升,但是和其他框架相比还有一定差距。

8、Puppeteer

eaYfAvI.jpg!web

Puppeteer是谷歌官方出品的一个通过DevTools协议控制headless Chrome的Node库。可以通过Puppeteer的提供的api直接控制Chrome模拟大部分用户操作来进行UI Test或者作为爬虫访问页面来收集数据。

根据调查显示,Puppeteer的用户留存率为24.3%,尽管已经有超过55,000个项目在使用Puppeteer,但用户对它的认识还是不够。

Puppeteer和Cypress是今年新加入的成员,但是已经成为 Mocha、 Jasmine、Jest等测试框架的强有力对手。Jest的用户里96%都是回头客。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK