我如何使用自己的 JavaScript 库“在 Qunit 中思考”?
我熟悉使用 javascript 进行开发,但现在我想开始使用 Qunit (使用我的 HTML/JavaScript 应用程序)。
我制作自己的图书馆。我使用公共(public)函数 和私有(private)函数。我还使用异步函数(事件监听器和回调)similar to jQuery :
var mylib;
(function() {
//...
})();
我不知道如何组织它。这里有几个问题来阐明我正在寻找的答案类型:
- 如何对私有(private)函数进行单元测试?
- 如何合并数百个测试?
- 根据您的经验,组织测试的最佳方法是什么? 我应该使用多个 HTML 文件吗?我应该如何在 JavaScript 文件之间拆分测试?
您是否推荐用于单元测试的 QUnit 插件?
在 GitHub 上,我可以在提交时自动使用 QUnit 吗? 你如何设置它?也许与 travis-ci ?
如何对异步函数进行单元测试?具体来说,如果函数与 LocalStorage(HTML5 存储)有链接并且可以与其他页面交互(like this)怎么办?我该如何测试? 我应该使用对象变量而不是 LocalStorage 吗?
我访问了官网http://qunitjs.com/ ,但我认为文档不是一个好的起点。
最佳答案
Travis-ci 确实是触发测试的好方法,包括客户端库。
答案“Using Travis-CI for client-side JavaScript libraries?”在 kort/kort/tree/develop/test/client
中给出了此类测试的一个很好的例子, 其中包括 QUnit in its index.hml
file .
关键是要用Grunt.js .
Travis 作业示例:kort/kort/jobs/3266208确实包括运行 QUnit。
4 年后,根据赏金更新:
您可以在 FredrikNoren/ungit 中看到超时维护的单元测试。 ,它使用 Travis。
但由于您不在 GitHub 上,您可以使用类似 GitLab-CI 的替代方法(使用您自己的 GitLab CE -- Community Edition -- server if you want )
在“GitLab Frontend testing standards and style guidelines”中查看该方法的更多信息:应用于 GitLab 项目本身的最佳实践也可以应用于您的项目。
你可以看到他们的unit test policy .
关于javascript - 我如何使用自己的 JavaScript 库处理 "think in QUnit"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24764320/