我想在我的应用程序中测试ajax请求。

该应用程序在iFrame中运行,我希望iframe的包装器页面将使用sinon测试该应用程序(包装器将发送响应)。

我试图将sinon的伪造服务器(window's)放入测试过的应用程序中的sinon.fakeserver.create()对象,但是当发送对ajax调用的响应时,它不起作用。

希望这个主意清晰易懂。

感谢您的帮助

最佳答案

这很容易。

调用sinon.fakeserver.create后,window.XmlHttpRequest将被sinon对象替换。

您可以分配和覆盖目标窗口对象,例如

var server=sinon.fakeserver.create();document.getElementByID("iframe").addEventListener("load", function(){ document.getElementByID("iframe").contentWindow.XMLHttpRequest=window.XMLHttpRequest;});

关于javascript - 如何在iFrame中将sinon js注入(inject)应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44799939/

10-11 05:43
查看更多