问题标签 [sinon]
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.
backbone.js - 学习单元测试和 Jasmine
我是前端开发人员,是 TDD 和 BDD 的新手。
我有这个任务。使用从 AJAX 调用接收到的 json 对象填充表。我将如何在套件和规范中描述这一点?
提前致谢
编辑
我将 BackboneJS 用于 MVC,将 sinon.js 用于间谍、存根等。
backbone.js - Backbone JS / Jasmine / Sinon:测试模型是否在事件发生后发生了变化
如何测试主干视图是否触发了事件,然后模型已更改?
jquery - 如何显示单元测试 jquery 对话框?
我写了下面的代码,尝试测试一个 jquery 对话框是否得到原谅和显示。
但是,它向我显示了错误:在测试 #1 中死亡:尝试将未定义的属性对话框包装为函数 - {“消息”:“尝试将未定义的属性对话框包装为函数”,“名称”:“TypeError”}
jquery 代码很简单:
任何人都知道如何在这种情况下模拟 jquery 对话框并编写单元测试?
javascript - jsTestDriver:运行测试时出现org.jvyaml.ParserException
我尝试使用 jsTestDriver 运行 javascript 测试。当我开始测试时,发生了异常。
当 jsTestDriver 的 .conf 文件在 args 中只包含一个文件路径时,不会出现该问题,例如:
backbone.js - Jasmine + Sinon 规范中未填充主干集合提取
当我运行此规范输出时,我得到“预期 0 等于 2”。2 是我的夹具中模型对象的正确长度,因此 Sinon 的 fakeServer 正确响应了模拟响应。我无法弄清楚为什么我的 Collection 在 fetch 之后有零个对象。任何帮助将非常感激!
仅供参考:这是来自此处的 Backbone Sinon + Jasmine 教程:http: //tinnedfruit.com/2011/03/25/testing-backbone-apps-with-jasmine-sinon-2.html
规格:
模型:
编辑:
下面的 Buck Doyle 帮助我看到没有规格问题。我的 Jasmine Headless Webkit 配置存在某种问题,如果规范与 Jasmine 独立运行,它们就通过了。
backbone.js - Sinon + Backbone 规范在 Jasmine Headless Webkit 下失败,但在独立 Jasmine 中通过
我有一个 Backbone 集合规范(当然是 todos),它使用 Sinon 用夹具数据伪造服务器响应。这与独立的 Jasmine 一起通过,但在我的 Jasmine Headless Webkit 设置下失败。
失败是这样的:
Sinon 和我的夹具正确地返回了一个带有 2 个 todo 的假响应,但集合中没有解析任何 todo。
有一个小提琴显示所有这些都与 Jasmine 独立工作在这里
我的 Jasmine Headless Webkit 加载顺序如下:
和代码(当然也在小提琴中):
正在使用的一些工具对我来说是新的,所以我非常感谢任何帮助 - 谢谢!
javascript - 如何使用 Sinon.js 存根事件发射器
我正在尝试存根以下内容:
如果第一个参数是“完成”,我只想调用回调。
我正在测试的功能还包含:
所以我不能只做会触发完整和错误回调的 yield 原因。
如果我不使用 sinon,我会通过编写以下内容来伪造它。
javascript - 如何在茉莉花单元测试中根据其他对象测试功能
我有一个名为 Event 的主干模型的 jasmine 单元测试。
在这个模型中,我有一个功能:
它有 4 个依赖项:
- 用户模型
- 用户集合
- 参与模式
- 参与合集
我想单独测试所有模型,因为这是最佳实践,但我不确定如何。
我正在使用 sinon.js 进行模拟和存根,但不知道在这种情况下如何正确使用它。
谢谢!
javascript - 使用 sinon.fakeServer 获取夹具数据
我正在尝试使用sinon.fakeServer
orsinon.useFakeXMLHttpRequest
和 require.js 模拟 Backbone.Model.fetch 请求。
这是我无法正常工作的代码 (1)
我的问题是:
如何使用 sinon.fakeServer 获取夹具数据?
请在这段代码末尾的两条评论。
PS:
如果我在获取有关 sinon.fakeServer 的代码的注释时发出请求,它会向服务器发出 get 请求。
如果我使用 sinon.fakeServer 发出获取请求,它不会获取任何东西(服务器和夹具)
(1)
javascript - 单元测试 base.js 类
我正在测试一些base.js(dean edwards base.js)代码,并想测试一些基本函数是否被特定参数调用。我们的测试堆栈看起来像 js 代码、qunit、sinon。例如,我有:
所以在上面的例子中,我创建了一个“Bar”的新实例并调用了 render 方法。Bar 渲染方法指定一些配置并将其传递给父渲染方法。有什么方法(使用 sinon.js)来监视该基本渲染调用吗?我通常会做类似的事情:
但这只会让我第一次调用渲染。