如何使用自己的JavaScript库"在QUnit中思考"?

A-3*_*312 9 javascript unit-testing github qunit local-storage

如何使用自己的JavaScript库"在Qunit思考 "?

我熟悉在javascript中开发,但现在我想开始使用Qunit (我的应用程序在HTML/JavaScript中).

我创建自己的库.我使用公共函数私有函数.我也使用类似于jQuery的异步函数(事件监听器和回调):

var mylib;

(function() {
        //...
})();
Run Code Online (Sandbox Code Playgroud)

我不知道如何组织.以下是一些问题,以澄清我正在寻求的答案类型:

  • 如何对私有功能进行单元测试?
  • 我如何结合数百个测试?
  • 根据您的经验,组织测试的最佳方法是什么?我应该使用几个HTML文件吗?我应该如何在JavaScript文件之间拆分测试?
  • 是否有建议用于单元测试的QUnit插件?

  • 使用GitHub,我可以在提交时自动使用QUnit吗?你是如何设置的?也许用travis-ci

  • 如何对异步函数进行单元测试?具体来说,如果函数与LocalStorage(HTML5存储)有链接并且可以与其他页面(如此)交互,怎么办?我怎么测试呢?我应该使用对象变量而不是LocalStorage吗?

我访问了官方网站http://qunitjs.com/,但我不认为文档是一个很好的起点.

Von*_*onC 3

Travis-ci 确实是触发测试的好方法,包括客户端库。

答案“将 Travis-CI 用于客户端 JavaScript 库? ”在 中给出了此类测试的一个很好的示例,其中在其文件kort/kort/tree/develop/test/client中包含QUnit 。 关键是使用Grunt.jsindex.hml

Travis 作业的示例:kort/kort/jobs/3266208确实包括运行 QUnit。


4年后,更新以下赏金:

您可以在使用 Travis 的FredrikNoren/ungit中看到超时维护的单元测试。

但由于您不在 GitHub 上,您可以使用GitLab-CI等替代方案(如果您愿意,可以使用您自己的GitLab CE - 社区版 - 服务器

在“ GitLab 前端测试标准和风格指南”中了解有关该方法的更多信息:应用于 GitLab 项目本身的最佳实践也可以应用于您的项目。
你可以看到他们的单元测试政策