1

我想要一个在浏览器中运行的 JavaScript 单元测试框架。不是使用 Selenium 中的外部浏览器自动化系统或非浏览器 JS 环境,而是只有一个 .html 加载测试框架和测试套件并在该页面中显示结果。我的搜索只找到了其他两种。

我主要对测试 JavaScript 代码以获得预期结果而不是崩溃、DOM/事件或视觉外观感兴趣。

锦上添花:

  • 性能测试/基准测试以及正确性测试。
  • 可选的外部自动化,因此 shell 命令可以运行测试套件并检查它是否成功。

要求的动机是:

  • 我正在测试的应用程序目前本身就是纯 JavaScript,我希望保持这种状态(不依赖平台或其他语言)。
  • 我正在使用许多更新或前沿的功能,例如 ECMAScript 5、类型化数组、WebGL 和本地存储。我想测试与这些设施的实际交互,而不是存根。
4

3 回答 3

2

我推荐qunit。它由 jQuery 团队创建(用于测试 jQuery 框架),它可以在浏览器和节点中运行。设置测试非常快,只需一个 HTML 文件,其中包含测试的脚本标签,并且有很好的文档记录。

于 2012-02-04T18:02:15.333 回答
2

jsunit茉莉花

您只能在浏览器中运行 Selenium。下载Selenium Core 1.01。将解压缩的文件上传到您要测试的域。打开 /core/TestRunner.html 并启动 Selenium 的仅浏览器前端 :)

我在几个项目中使用这种测试。只有一个地方来存储和运行测试是完美的。您可以通过 cronjobs 触发这些并捕获结果。我对它进行了很多扩展,并将结果保存到数据库中,并在发生错误时使用 JS 自动截屏。

2.0以上的版本是否还支持这种运行的Selenium,我不知道。这是一个很小的文档

于 2012-02-04T17:34:11.573 回答
0

除了已经提到的那些(qunit & Jasmine),我推荐mocha.js,它增加了一点复杂性但它更加灵活,你需要加载文件,添加一个带有配置的脚本标签并开始测试,加号是如果测试失败会抛出异常,你可以使用任何你喜欢的断言/期望库。

于 2012-10-07T22:00:13.453 回答