问题标签 [qunit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何以编程方式触发 Twitter 意图事件?
Facebook JS SDK 具有相当于 jQuery 的trigger()
功能,FB.Event.fire
它允许您触发为特定事件附加的处理程序。它对我在 QUnit 中的单元测试很有帮助。它基本上可以按照您的预期工作;FB.Event.fire("comment.create", location.href);
触发我的comment.create
事件处理程序。
Twitter 的Web Intents对象twttr
似乎有一些看起来可能相似的东西twttr.events.trigger()
,但它没有记录。
除了,我不知道如何在代码中正确触发它,而不会引发错误。
如何以编程方式测试附加到该对象的处理程序?
对于像这样的代码:
我希望能够通过执行以下操作来触发它:twttr.events.trigger("click")
我尝试的一切都会导致错误,而且我无法破译混淆的源代码。
我在 JSFiddle 上放了一些基本代码:http: //jsfiddle.net/YL6SN/
qunit - 与 Date.js 一起使用时 Qunit 崩溃
我正在使用 Qunit 和 Date.js 来测试我编写的一些 API 函数。这是我的代码:
Qunit 在第一次测试中不断崩溃,告诉我:
并抛出 asyncTest 中的整个函数。我做错了什么,还是这是 Qunit 或 Date.js 中的错误?
javascript - 我应该测试 Javascript 插件的私有功能吗?
我正在尝试编写测试驱动的 Javascript。我知道,测试每个功能是至关重要的。但是我遇到了一个绊脚石,因为我正在编写的插件需要具有一些私有功能。我无法窥探它们的运作方式。如果我想保持我的代码经过良好测试而不过多地改变它的结构,我需要做什么?(我可以公开一些 API,但在限制范围内。)
我正在使用 sinon、QUnit 和 Pavlov。
node.js - 在 node.js 中使用 qunit 测试 http.get()
我正在尝试为 node.js 库 code.js 编写一个简单的 qunit 测试。第一个测试用例是我正在尝试的最简单的测试用例,并且没有使用我的 code.js 库中的任何导出函数,但它不起作用。
QUnit模块如下:
我认为问题之一是测试执行在执行 get 回调之前完成,但我不太确定。也许其余的问题是我是 qunit 的初学者,所以我真的很感谢任何评论。
解决方案:我将使用 asyncTest:
javascript - 使用 QUnit 测试使用除 jQuery 之外的其他框架的代码?
我正在编写一个可以使用多个框架(目前是 jQuery、Prototype、YUI2)作为后端的小型库,我正在使用 QUnit 对其进行测试。但是,QUnit 需要 jQuery。
有没有办法在不包含 jQuery 的沙盒环境中运行测试?
编辑:我更喜欢沙盒而不是只包含所有内容,因为它可以让我同时测试多个版本的库。
coffeescript - 如何转义 CoffeeScript 保留字?
我正在尝试使用用 CoffeeScript 编写的 QUnit 运行一些单元测试,但似乎有一些保留字会导致问题,尤其是“不”。有没有办法逃避 CoffeeScript 保留字?这是一个演示问题的简单测试:
这产生的错误是“第 3 行解析错误:意外的','”
javascript - node-qunit 不适用于 nodeJS
我已经使用 npm 安装了 node-qunit,这似乎可以正常工作。
以下脚本什么都不做……没有错误,没有 qunit 输出(甚至没有失败的测试用例):
javascript - 如何在 qUnit 中针对 DOM 对象进行测试?
我正在用 qUnit 测试一些 JavaScript。在一个对象中,我传递了一个 DOM 元素,一些方法会改变元素的一些属性。
如何在 qUnit 中模拟 DOM 对象?
我想使用独立于浏览器的解决方案,因为我还测试了 XUL 应用程序。
javascript - 没有通过 Var 的 Qunit 测试
我正在尝试对一个对表单进行一些非常简单验证的函数进行测试。但是,如果不将 vars 传递给函数,我无法弄清楚如何使用 qunit。这是我正在谈论的一个例子
我在文档中看到的所有 qunit 示例都做了这样的事情
我应该只修改我的功能还是有办法使用这样的设置。
//编辑
我现在选择追求的选项是在当前函数之上设置另一个函数,它只是解析表单输入,然后将它们作为 vars 发送到 validateForm() 函数
jquery - jQuery Ajax:从 App 根目录引用 MVC 控制器 url
我有一个从http://localhost/myappname
. 在 jQuery 中,我进行 jQuery $.ajax() 调用以基于某些用户操作返回部分视图。我通常从包含我通过 Ajax 调用的函数的同一控制器中的视图中调用它。例如,我的 Home 控制器中的视图具有以下功能(效果很好):
上面的 url 被解析http://localhost/myappname/Home/GetNavigationTreePV
并正确返回了部分视图。
现在,我正在尝试使用 qUint 对我的功能进行单元测试。在这个测试用例中,我只想验证我到达函数的末尾并返回 true。我创建了一个QUNIT
控制器和相应的视图(它加载了我的单元测试 JavaScript 文件)。从包含我的单元测试的 test.js 文件中,我尝试调用与我的主页视图中相同的函数,如上面的那个。但是,由于我现在用完了QUNIT
控制器,所以 url 被解析为http://localhost/myappname/qunit/Home/GetNavigationTreePV
.
我尝试将我的 ajax 请求的 url 更改为/Home/GetNavigationTreePV/
(使用前面的正斜杠),但是当我这样做时,我得到以下 url http://localhost/myappname/Home/GetNavigationTreePV
。
因此,需要明确的是,我试图以始终从 MVC 应用程序的根目录开始的方式编写我的 ajax 请求,然后附加我的 $.ajax() 函数中给出的 url 参数。
有没有简单的方法可以做到这一点?我会以一种奇怪的方式解决这个问题吗?