2010-07-12 105 views
4

我想在Cruise Control中运行JavaScript代码的单元测试。我们目前使用nUnit,并且我看到nUnit有一个javascript库。如何使用nUnit在JavaScript中编写单元(而非UI)测试?如何使用nUnit单元测试JavaScript?

回答

1

你可以用JSUnit来做到这一点。他们的JSUnit服务器允许您在Java虚拟机(JVM)内运行可脚本化的JavaScript单元测试。

+0

但是如何自动化呢? – deha 2010-07-13 05:38:10

3

将JS测试自动化并将其包含在持续集成过程中的最佳方法是使用JSTestDriver。它非常快速,可以在各种浏览器中测试脚本,可以很容易地集成到IDE(How To ntegrate JsTestDriver in Visual Studio)中,更重要的是 - 这是一个简单的comsole应用程序,可以从nant脚本轻松执行。

JsTestDriver测试解决方案的例子是here

+0

看起来很有希望,但是如何在CC.NET稍后捕获结果并显示它们? – deha 2010-07-13 06:20:59

+2

JsTestDriver生成符合jUnit的XML输出。您所需要的只是在CCNET报告中注册JUnit xsl。详情:http://code.google.com/p/js-test-driver/wiki/ContinuousBuild – 2010-07-13 07:08:38

+0

好吧,我会测试它;)谢谢 – deha 2010-07-13 08:00:40

0

您可以使用Rhino,这是一个用Java编写的Javascript运行库(IIRC,命令行类似于java -jar Rhino.jar script.js)。 如果您的测试不需要浏览器,这特别有用。

不要忘记用JSLint分析你的JS代码!