问题标签 [jasmine-ajax]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - jasmine-ajax 模拟获取参数
我正在使用 jasmine-ajax 来模拟 $.ajax 接听电话。在我的实际代码中,我通过数据选项发送了一些参数。
但在我的测试中jasmine.Ajax.requests.mostRecent().url
返回/users?id=1
和jasmine.Ajax.requests.mostRecent().data()
返回{}
。有没有办法让 url 返回/users
和数据返回{id:"1"}
,让我的测试生活更轻松?
javascript - 无法阻止 jasmine-ajax 尝试解析 FormData 对象
我正在使用 AJAX 进行 POST 并尝试测试发送的数据,但是当测试运行时我收到错误“paramString.split 不是函数”。我已经寻找过有关此的其他帖子,但它们似乎都是关于让 FormData 与 AJAX 一起使用,我没有遇到任何问题。数据发送,但我无法围绕它编写成功的测试。
阿贾克斯:
测试:
错误
错误发生在这一行:
https ://github.com/jasmine/jasmine-ajax/blob/master/src/paramParser.js#L18 。我在那里放了一个断点,paramString
此时实际上是一个 FormData 对象。我假设模拟请求jasmine.Ajax.install
会覆盖processData: false
我在原始请求中的内容,但我不知道如何解决这个问题。
jquery - 用 Jasmine 模拟 jQuery ajax 调用
我正在使用 Jasmine 2.5.2 为使用 jQuery 3.1.1 执行 Ajax 请求的代码编写单元测试。我想模拟 Ajax 调用,提供我自己的响应状态和文本。
我正在使用 Jasmine ajax 插件(https://github.com/pivotal/jasmine-ajax)。
按照https://jasmine.github.io/2.0/ajax.html上的示例,它使用 XMLHttpRequest 对象,工作正常。
注意:这与记录的示例略有不同,必须更改jasmine.Ajax.requests.mostRecent().response()
为jasmine.Ajax.requests.mostRecent().respondWith()
.
当我使用 jQuery Ajax 时,从不调用 doneFn。
茉莉花说
Jasmine-Ajax 在 XMLHttpRequest 对象上模拟您的请求,因此应该与执行 ajax 请求的其他库兼容。
$.ajax 从 1.4.x 返回 jqXHR 而不是 XMLHttpRequest - 这会破坏 Jasmine Ajax 的支持吗?
javascript - 使用 Jasmine 和 AJAX 加载数据似乎没有将其保存到 javascript 类
我正在使用 Jasmine 2.8 和 jasmine-ajax 插件来模拟 jQuery getJSON 调用。回调应该将数据存储回对象中。我有一个类结构如下。
Jasmine 返回错误消息: Expected({ }) to equal 。
将打印语句放入代码中会验证回调是否已被调用和接收,但是当测试运行时,数据属性 (_d) 是一个空对象。
我在 nodejs 的命令行上使用 jasmine。我有一个助手,它使用 JSDOM 加载虚拟 dom 并配置 global.getJasmineRequireObj 来配置 jaxmine-ajax;
谢谢你。
jasmine - “typeof jasmine”类型不存在属性“Ajax”
我正在尝试在 angular-cli 项目中安装 jasmine 插件“jasmine-ajax”。这些说明看起来很标准,但我一直收到这个错误:
“src/app/app.component.spec.ts(8,13) 中的错误:错误 TS2339:类型 'typeof jasmine' 上不存在属性 'Ajax'。”
我一直在 jasmine.Ajax.install() 上看到错误
在我的 karma.conf.js 文件中,我有这个:
我还尝试使用 jasmine.json 中的 helpers 部分添加插件。这是我的 jasmine.json 文件的样子:
最近有人成功安装了 jasmine-ajax 插件吗?
会不会是 jasmine-ajax 的版本?
typescript - 使用 jasmine-ajax 模拟 XMLHttpRequest 给出 jasmine.ajax = undefined
我正在尝试使用 jasmine-ajax 在单元测试中模拟 XMLHttpRequest。我使用 Aurelia CLI 来生成我的应用程序,并且我使用 Karma 作为单元测试运行器。
对于单元测试,我尝试导入 jasmine-ajax:
使用 Karma 运行测试时,我得到:
TypeError: jasmine_ajax__WEBPACK_IMPORTED_MODULE_0__.jasmine 在 test/karma-bundle.js 第 3146 行 > eval(第 7 行)中未定义
我发现我已经安装了 jasmine-ajax 的类型定义
npm i @types/jasmine-ajax
然后我删除了 jasmine-ajax 的导入语句。这导致了以下错误:
TypeError: jasmine.Ajax is undefined in test/karma-bundle.js line 3134 > eval (line 3)
那我做错了什么?
我正在使用 jasmine 3.3.9、jasmine-ajax 3.4.0、karma 4.0.1、typescript 2.9.2 和 webpack 4.4.25,
javascript - 如何使用 jasmine-ajax 来验证 send 方法是否被调用?
如果我从不调用该方法,应该使用 4jasmine-ajax
调用吗 onreadystatechange
?readyState
send
如果以上不是预期的行为,我如何使用jasmine-ajax
来验证该send
方法是否被调用?
这是正在测试的代码:
这是测试:
我很惊讶地看到它successFunction
被调用了,因为被测代码从不调用ajax.send()
. 如果这是库的预期行为,那么我如何spyOn
使用底层ajax
对象以便验证被测代码是否调用send
?