Tag: 模拟qunit

在qUnit中测试整页重定向

我有以下function var redirect = function() { window.location.href = “http://www.google.com”; } 我想用qUnit测试这个函数。 问题是,当我调用运行测试的HTML文档时,只要它进入调用redirect()的测试,浏览器就会加载google.com。 我想做的是以某种方式模拟window.location.href,以便它不重定向,所以我可以检查它是否设置为正确的值。 以一种更可测试的方式重写它将是一个可接受的答案,并受到欢迎。 由于我使用的是qUnit,因此一些jQuery魔法是合适的,就像一些老式的重构一样。 建议为window.location.href添加自定义setter,但我无法弄清楚如何使其工作。 请不要改变我的代码行为的建议。