什么是Node.js最好的测试框架?

我在https://github.com/ry/node/wiki/modules#testing查看了相当长的测试框架列表。 这些框架的经验是什么?

显然,在浏览器中运行的能力将是一项巨大的好处,但我主要对Node.js感兴趣。 一个严重异步倾斜的东西会很棒。


更新:

摩卡是我认为最好的。


这些框架的经验是什么?

我玩expresso这是非常酷的测试框架,也有测试覆盖。 它由TJ Holowaychuk创建,TJ Holowaychuk也是Express.js(基于Node.js和Connect构建的疯狂快速(小型)服务器端JavaScript Web开发框架)的创建者。 我最近看到他还有一个很酷的库叫做should.js,可以和Expresso一起使用,以获得更好的测试体验。

显然,在浏览器中运行的能力将是一项巨大的好处

我不相信它可以在浏览器中运行,但我也不明白为什么你想在浏览器中运行它。

但我主要对Node.js感兴趣。 一个严重异步倾斜的东西会很棒。

来自expresso的报价:

传递给每个回调的参数是beforeExit,它通常用于声明回调已被调用。

您可以使用beforeExit来测试异步函数。


提示:在GitHub上关注TJ Holowaychuk,因为他创建了非常好的开源代码。


我使用VowsJS这是很容易使用的异步BDD框架(行为驱动开发),并完成工作。

从我最近看到的是许多人选择测试他们的NPM模块,所以我相信到目前为止,这是最好的使用方法。

一些可以与NodeJS一起使用的流行测试框架也是这样的:

  • 摩卡
  • 茉莉花
  • Expresso(不再维护)
  • 应该
  • NodeUnit
  • JSUnit的
  • 您也可以在这里看到JavaScript测试框架列表

    更少的库可以帮助你编写更好的代码:

  • ReadyJS监视你的js文件并用JSHint测试它们
  • 具体小型持续集成服务器
  • 耶洗别持续测试茉莉花
  • 诺西不是那里,但有一个很好的路线图,所以我一直关注它
  • Atlassian还有Bamboo CI Server,它可以自动构建和测试。 它是Apache / Tomcat的一个软件包(sux因为它使用Java并且使它非常繁重)也不是免费的,但它有一个初始许可证,价格为10美元,所以我相信它是实惠的。 它是迄今为止我发现的所有CI服务器中最具特色的功能,它支持所有支持xUnit的单元测试,这意味着您可以使用Bamboo运行任何语言的构建/测试。

    CI与NodeJS的另一个选择是Travis,很多人都将其用于开源项目,正如它说的那样,为开源社区托管持续集成服务。

    还有一个关于持续集成节点JS项目的谷歌小组讨论主题。


    根据上述提问者的评论,我尝试了许愿,并解决了我在异步测试中遇到的许多问题。 它能够混合串行和并行测试非常棒。

    确保您仔细阅读指导文档,但一旦掌握了该指导文档,它就会灵活而强大,并且会产生清晰的结果。

    更新:我也鼓励人们检查出他们的断言。 它允许非常灵活,可读性强的断言,并且与Expresso和Vows以及其他大多数其他测试框架兼容。

    (为了防止人们注意到Alfred的回答,我将其作为一个单独的答案发布。)

    更新1/7/2015:为了什么是值得的,我已经从誓言转变为摩卡,并从应变到柴。 对于使用承诺的异步测试,摩卡拥有更好的支持,Chai允许为那些不想修改对象原型的人提供几种灵活的断言选项,包括expect api。

    链接地址: http://www.djcxy.com/p/52593.html

    上一篇: What is the best testing framework to use with Node.js?

    下一篇: chat from a webpage, (XMPP? Strophe? Punjab?)