javascript - 我如何使用自己的 JavaScript 库处理 "think in QUnit"?

标签 javascript unit-testing github local-storage qunit

我如何使用自己的 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/

相关文章:

c++ - 使用输入迭代器时的单元测试

python - 如何为 Python Telegram Bot 创建单元测试

javascript - MVC6 Validation-For 属性无法正常工作?

javascript - 有什么方法可以从 Javascript 触发 VB.NET 按钮?

javascript - 我可以等待 DOM 事件解决吗?

JavaScript 函数副本

c# - 从 NUnit TestContext 检索测试持续时间

android - 具有选定名称的远程已存在 Android Studio,git hub 错误

使用 Semaphoreci 进行 Android 自动化集成测试。如何正确设置?

Github 在自述文件中保持链接持久到最新版本的 Assets 文件