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.") });
失败了。 不确定为什么对话框没有出现。 任何见解将不胜感激。
Bootstrap在正文末尾添加一个div来管理背景。 它在测试执行后仍然存在,因为它位于#qunit-fixture div之外。
除了使用适当的选项删除背景之外,我没有看到任何其他解决方案:
$('#error').modal({ backdrop: false });
要么:
data-backdrop="false"
我不认为它应该是一个大问题,因为你可能想测试你的代码而不是bootstrap的模态效果。
请参阅: http : //jsfiddle.net/Jv6cM/