Tag: qunit

如何检测QUnit模块中的所有测试何时完成?

出于测试排序的目的以及防止测试被中断。 此外,有没有办法停止模块或中途测试并重置QUnit(包括所有历史记录结果)? QUnit.moduleDone是我尝试测试模块完成的唯一方法。 但它适用于模块中的每个单独测试,而不仅仅是模块整体。

qUnit:Twitter引导模式在qunit-fixture之外编写

我正在为使用Twitter的Bootstrap的项目编写qUnit测试困难。 当产生模态时,它将叠加层置于qunit-fixture之外,因此当下一次测试运行时,叠加层不会被移除。 有人遇到过这个问题吗? 点击事件(链接到jsfiddle需要一些内联代码,请查看小提琴): $(“#qunit-fixture”).on(‘click’, ‘#click’, function () { $(‘#error’).modal(‘show’); }); 示例: http : //jsfiddle.net/Gbyza/4/ 注意每次测试屏幕是如何变暗的? 这是每次连续测试都不会重置的叠加层。 另一个问题是 test(“Error Dialog “, function () { $(“#click”).click(); equal($(“#error”).is(“:visible “), true, “Error dialog spawned.”) }); 失败了。 不确定为什么对话框没有出现。 任何见解将不胜感激。

jQuery插件:如何使用qunit测试插件的配置?

我在编写jQuery插件时尝试qunit,我想知道如何测试以下内容: (function($){ $.fn.myPlugin = function(options){ var defaults = { foo: function(){ return ‘bar’; } }; options = $.extend(defaults, options); return this.each(function(){ … }); }; })(jQuery); 这是我的qunit测试的简单版本: module(‘MyPlugin: Configuration’); test(‘Can overwrite foo’, function(){ var mockFoo = function(){ return ‘no bar’; }; //equals(notsure.myPlugin({ foo: mockFoo }, ‘no bar’, ‘Overwriting failed’); }); 所以我想知道如何在我的测试中从我的插件中公开内部方法/成员?

检查图像是否正确加载Qunit

我正在尝试使用Qunitvalidation图像URLs , Qunit是将URL设置为测试图像的src属性,并使用error事件处理程序检查是否正常。 到目前为止我所拥有的是: test(‘image’,function() { var test_image = $(‘#test-image’); test_image.error(function(e) { // properly triggered console.log(e); is_valid = false; // ok(false,’Issue loading image’); breaks qunit }); var is_valid = true; test_image.attr(‘src’,’doesntexist’); console.log(‘checking is_valid’); // occurs before error event handler if (is_valid) { // therefore always evaluates to the same ok(true,’Image properly loaded’); } else { […]

Qunit测试在页面刷新时在通过和失败之间交替

我有两个测试相互引起副作用。 我理解为什么我要替换在第二次测试中内部调用的jQuery内置函数。 然而,我不明白的是为什么测试交替通过和失败。 这个问题很相似但是,我没有直接在qunit-fixture div上做任何事情。 这是我的测试 test(‘always passing test’, function() { // Always passes var panelId = ‘#PanelMyTab’; var event = {}; var ui = { tab: { name: ‘MyTab’, }, panel: panelId, }; $(”) .append(‘Test’) .append(‘Show Form’) .appendTo(‘#qunit-fixture’); jQuery.fn.on = function(event, callback) { ok(this.selector == panelId + ‘ .export’, ‘Setting export click event’); equal(callback, […]

等待QUnit测试

我有jQuery代码,当我点击它首先隐藏的链接然后删除一些HTML,如下所示: $(this).parent().parent().hide(‘slow’, function () { $(this).remove(); }); 我想进行一个QUnit测试,以确保删除有问题的HTML: $(thelink).click(); // Check that it is gone, by finding the first item in the list entity = input.form.find(‘.recurrenceinput_occurrences .occurrence span.action a’)[0]; // And make sure it’s NOT the deleted one: ok(entity.attributes.date.value !== “20110413T000000”); 问题当然是在隐藏动画运行结束之前运行ok()测试,因此尚未删除有问题的HTML,并且测试失败。 我已经尝试了各种方法来延迟/停止测试一秒左右,但似乎没有任何工作。 最明显的一个是使用asynTest而且可以 stop(); setTimeout(start, 2000); 但这实际上并没有阻止测试。 它确实似乎停了两秒钟,但我不确定是什么。 🙂 有任何想法吗?

如何在TestSwarm中添加项目和创建作业

我正在尝试设置TestSwarm,但无法创建项目和作业。 从github克隆TestSwarm时,某些文件缺失如/ run等。 请提出您的想法!

如何在qUnit中停止全局失败?

我是qunit的新手,并且正在尝试将其与现有环境集成。 我在使用jQuery的页面上遇到的一个问题是: global failure (1, 0, 1)Rerun6 ms Uncaught ReferenceError: $ is not defined 我想这是因为我没有在qunit HTML中调用jquery库。 是否可以设置一个参数来忽略像这样的全局变量? 我试图使HTML尽可能灵活,并且由于许多编辑器具有不同的依赖关系,我只想要qunit来测试我专门给它测试的函数。

我们如何针对DOM操作执行unit testing?

在netTuts.com上对QUnit的介绍产生了一个有趣的交换(从未解决),如何对操作DOM的操作应用unit testing。 以下引用(亚历克斯约克)得到了关键: 如果您有这样的函数,那将是多么好的: function add(a,b){var result = a + b; $(“#输入ResultTestBox”)VAL(结果)。 在上面的测试中,我想测试两件事:添加a和b,并将结果正确地放入DOM元素中。 我想通过提供一些模拟HTML来测试第二件事。 可能? 但是,就像我说的……没有解决。 可分解?

在ASP.NET中使用QUnit测试Javascript的推荐结构

我有一个标准的ASP.NET MVC(版本2预览2)解决方案,在单独的项目中实际项目和服务器端unit testing。 因为这个项目非常客户端,所以我想创建一个ClientTest项目,它使用QUnit来测试主项目。 我想过用一个HTML文件创建一个常规的ASP.NET webforms项目,该文件可以在我的Scripts /目录中加载各种脚本并用QUnit测试它们。 不幸的是,这将产生另一个ASP.NET开发服务器。 我可以在运行测试之前配置正在运行的MVC项目服务器的端口,但是必须有一种更好的方法,不仅仅是将测试html文件放入主MVC项目中。 有谁知道更好的方法来解决这个问题?