使用V8进行Javascript单元测试

15

目前,我正在使用PhantomJS在我们的构建服务器上运行QUnit和Sinon框架的JavaScript单元测试。

但是,PhantomJS使用JavaScriptCore作为其JavaScript引擎,带有JIT编译器。相反,我想使用V8引擎,它被用于Google Chrome,或者Chakra,它被用于IE。我想这样做是因为我想检查代码的平台兼容性。

是否有像PhantomJS一样使用这些引擎的流行测试运行程序?

1个回答

12
我能想到的最接近的是Zombie.js,它是一个用JavaScript编写的无头浏览器,在Node.js下运行。
它不像Phantom那样是一个真正的浏览器,所以有些事情你不能用它做到,但是它使用了Node.js,显然使用了V8引擎,因此它符合你的标准。
但如果你真的想要测试所有浏览器的各种引擎,另一种选择当然是使用真正的浏览器。你不必为它提供可见的UI;使用像Selenium或Sahi这样的工具,可以从脚本启动和运行浏览器,并在虚拟机中运行;你甚至不需要看它。它可能不像使用Phantom那么快,但它将是一个真正的测试,这显然是你真正感兴趣的。
[编辑] 值得注意的是,最近我发现了SlimerJS,它是一个开源项目,旨在产生一个使用Gecko引擎的与PhantomJS兼容的浏览器。再次强调,这不完全符合问题中所要求的内容,但它符合其精神;拥有另一个可用的工具,使跨平台测试变得更加容易。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接