Visual Studio/Build Server的JavaScript单元测试工具-尚未达成共识

JavaScript unit testing tools for Visual Studio / Build Server - any consensus yet?

本文关键字:测试工具 单元 Studio Build Server JavaScript Visual      更新时间:2023-09-26

情况如下:

  • 我们是一家使用Visual Studio/TFS等的微软商店
  • 我们有一个构建服务器,它每晚为我们执行构建并运行各种测试,以确保白天没有任何损坏
  • 我们现在正在做越来越多的JavaScript,而且这种情况可能还会继续下去

我们的JavaScript目前都没有经过测试,因为当我环顾四周时,我发现JavaScript测试世界正处于不断变化的状态。我读过很多产品,但我不确定该走哪条路。我发现这个问题在原始信息方面很有帮助:

TDD 的JavaScript单元测试工具

理想情况下,我希望使用能够很好地集成到Visual Studio和我们的TFS构建服务器中的东西。大多数JavaScript测试选项似乎都支持这一点。

我发现了这篇文章:(但我不太喜欢使用jscript进行测试)

http://stephenwalther.com/blog/archive/2010/12/20/integrating-javascript-unit-tests-with-visual-studio.aspx

我发现了这个——看起来很有前景:

http://chutzpah.codeplex.com/

所以我想知道的是,目前是否有任何共识?人们是否采用了一种工具而不是另一种工具,是否有任何方法获得了临界质量?我很想利用一些显然已经对很多人有效的东西。

值得我为一个与Visual Studio/TFS配合良好的JavaScript测试框架而坚持吗?还是应该使用一种非Microsoft友好的产品?

感谢所有见解!

我不会走那么远,我会说我正在远离在MS环境中开发。我认为Visual Studio是一个很棒的工具。使用Eclipse&用于PhoneGap开发的XCode甚至让我从另一个角度了解了Visual Studio是如何真正发挥作用的。

关于JavaScript,Visual Studio 2012中有许多增强功能,但单元测试的整体解决方案还不是其中的一部分

在参与了一些JavaScript繁重的项目后,也觉得有必要进行单元测试,因此开始使用QUnit和Sinon.JS.进行浏览器内测试

我去那里寻找合适的堆栈来满足我的期望:

  • 与Visual Studio无缝集成。因此,我们可以在不离开IDE的情况下运行测试。

  • 无头测试。如果可能的话,同时针对多个浏览器。

  • 支持AMD(异步模块定义)/Require.JS.

  • 支持异步测试。

  • 文档库&工具。

  • 首选免费工具。

最终,我找到了从IDE内部进行Headless测试和JS测试驱动程序的完美组合。

我在我的博客上写了一个由三部分组成的系列:

  • 第一部分-期望和;选择的堆栈

  • 第二部分-设置无头测试的环境

  • 第三部分-测试AMD/Require.JS模块

你可以在这里找到最后一部分,链接到前两个帖子:

http://www.upstruct.net/2013/02/javascript-unit-testing-in-visual-part-3.html

我已经在几个项目中使用了这种组合,到目前为止,从团队那里得到了非常好的反馈。

如果它适合你,请告诉我。。。

我一直在寻找同样的答案,但现在想知道我是否应该完全放弃在MS环境中开发。随着我所做的越来越多的工作都是在客户端进行的,Visual Studio似乎不那么重要了。有趣的是,自从我玩Eclipse以来,我也遇到了同样的问题——缺少JS测试插件!所以我不确定在MS开发之外是否有共识。我认为这部分是因为经验丰富的C#/Java开发人员不愿意使用JS,而是希望使用强类型语言进行编译(使用GWT和Script Sharp等工具)。其结果是混淆了什么是最佳实践。但是,由于JS的工具似乎在改进,我有点不情愿地得出结论,JS应该是编码的第一点,而不是添加另一层抽象。因此,我只能使用他们可用的工具——QUnit目前是我的选择。

2021年,微软似乎建议我们使用NodeJS应用程序来运行JavaScript单元测试。Visual Studio的测试窗口现在可以看到我们在该项目中编写的测试,即使整个项目是C#:

  • https://learn.microsoft.com/en-us/visualstudio/javascript/unit-testing-javascript-with-visual-studio?view=vs-2019年;tabs=摩卡

推荐的测试库组合(单元测试/嘲讽/断言)之一是使用Mocha/Sinon/Chai。对于这种口味,这里有一个有用的教程:

  • https://scotch.io/tutorials/how-to-test-nodejs-apps-using-mocha-chai-and-sinonjs