我很难找到关于如何使用Jasmine BDD伪造ajax调用的任何示例?
ajax({ url: 'JSON.PHP',dataType: 'json',onSuccess: function(resp) { console.log(resp); } });
…而且我不知道如何创建一个存根来伪造调用实际的ajax函数.
我想避免调用ajax函数,因为它可能会减慢我的测试套件,如果对服务器的真正的ajax调用需要一些时间来响应并且我的测试套件中有大量的规范.
我听说你可以使用spyOn(命名空间,’ajax’),但这很烦人,因为它要求我将ajax函数包装在一个对象中只是为了使用spyOn函数(但无论我怎么都无法关注因为我找不到任何伪造ajax调用的具体例子.
我也听说你可以使用createSpy()但是文档也不是很有用(GitHub上也没有相应的wiki).
解决方法
您可以使用Sinonjs模拟框架,它具有
fake server版本.您可以轻松地将其与jasmine一起使用:
beforeEach(function() { server = sinon.fakeServer.create(); server.respondWith([200,{ "Content-Type": "text/html","Content-Length": 2 },"OK"]) });
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。