问题标签 [jasmine]

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.

0 投票
1 回答
2321 浏览

javascript - 在茉莉花中监视 jquery ui 小部件

我有一个这样定义的 jquery ui 小部件:

现在我试图像这样监视它:

两者都返回假......我做错了什么?

0 投票
1 回答
649 浏览

javascript - Jasmine,无法初始化

我有一个没有任何 rails、merb 等框架的 ruby​​-javascript 项目。Gem 已成功安装,但是当我尝试初始化 jasmine 时,jasmine init我收到了以下消息:

宝石文件:

如何解决这个问题?谢谢

PS Windows 7,DivKit

PS1。似乎bundle exec jasmine init应该工作,但我有另一个错误:

0 投票
1 回答
946 浏览

javascript - Jasmine BDD 的嵌套 expect() 函数不计算

我有以下 Jasmine 上下文和断言:

当我打电话给 Ja​​smine 来评估规范时,它不会接受断言。我怎样才能让它拾取断言?

0 投票
1 回答
1833 浏览

javascript - 使用 Jasmine 测试复杂的排序功能

我正在学习Jasmine,并且正在尝试测试一个复杂的排序功能。本质上,当单击 ('.overview_table_header') 类时,$(this) 会从列列表中填充列的名称:Likes、Checkins、State 等。

说“喜欢”被选中。然后它会对喜欢的列进行排序,向服务器发送一个 GET 请求。我想在 Jasmine 中测试这个过程,我什至不知道从哪里开始。你会如何写一个测试?我会告诉你我到目前为止。

要测试的Javascript:

我的茉莉花测试:

我的夹具

0 投票
4 回答
9431 浏览

javascript - 模拟 TDD JavaScript 的用户输入

我发现使用 jQuery 或原生元素触发函数来模拟实际用户事件变得越来越困难。例如,如果你有一个文本输入并且你不希望用户能够添加一个字符,你可以在事件上调用e.preventDefault()jQuery 规范化的事件对象keydown。但是,无法以编程方式验证此测试场景。

即使没有调用,以下测试也会通过,preventDefault因为 jQuery keydown 触发器不是“真实”事件。

如果没有正确的代码,这个测试应该会失败,因为输入的值应该是“testd”(68 是“d”的字符代码)。

有谁知道任何方法或库来模拟真实的浏览器 UI 事件?

0 投票
1 回答
1516 浏览

jquery - 茉莉花单元测试不适用于简单的 jquery click

我正在尝试学习如何使用 Jasmine 进行单元测试。我设计了一个非常简单的示例,在该示例中,我尝试测试触发 jquery click 事件时是否调用了方法。我似乎无法让它工作。有人可以帮忙吗?非常感谢!!

我收到以下错误:

这是代码

这是我的单元测试

0 投票
1 回答
1355 浏览

javascript - 你能用 Jasmine 测试嵌入在 HTML 页面中的 JavaScript / JQuery 代码吗?

如何使用 Jasmine 或其他工具来测试嵌入在网页中的 JavaScript / JQuery,如下例所示?

0 投票
0 回答
502 浏览

jquery - 使用 Jasmine 框架在 Jquery 插件中对 ajax 调用的成功函数进行单元测试

在使用 Jasmine 对 jQuery AJAX 调用进行单元测试时,我通常可以在将选项传递给 $.ajax() 函数之前监视成功函数(网络和这个论坛上有很多例子)。

但是这次我遇到了一个特殊的问题。发送到 $.ajax 的选项深深地隐藏在 jQuery 插件中并由复杂的逻辑创建,而我获得成功函数的唯一方法是监视 $.ajax 本身并调用假函数。

但是现在我有了选项,我不能再调用 $.ajax 函数了。因此,经过大量的网络搜索和 API 文档阅读后,我终于想出了从服务器返回的数据:

鉴于在调用 $.ajax 之前无法拦截 options.success() 上的任何间谍选项,这可以更简单吗?

谢谢,

礼萨

0 投票
1 回答
2580 浏览

javascript - 使用 Jasmine 测试 Javascript 的优势是什么 - 一种 BDD 方法?

使用Jasmine测试您的 Javascript 有什么优势?

它与传统的 JavaScript 测试有何不同?

0 投票
2 回答
2450 浏览

canvas - 集成测试画布

在过去的几周里,我一直在尝试各种方法,试图找到将 BDD 用于依赖于 HTML5 画布元素的 Web 应用程序以及与它的用户交互的最佳方法。

我一直在使用带有 Rspec 的 Jasmine 和 Cucumber 来规范和集成测试我的应用程序的每个部分,但是我不得不对画布进行集成测试的任何尝试都出现了......不成功。我编写了一个 jQuery 插件来处理与画布的交互以及对其进行初始化。

我想集成测试画布上的实际绘图,确保当你调用类似的东西时

实际上在画布元素的点 (10,10) 上创建了一条线。这就是事实证明的变化,我尝试在任何绘制的像素上使用上下文方法 getImageData()。这让我陷入了一个困境,无论我如何查询画布,我都会得到代表黑色透明像素的像素数据,MDC 说我正在脱离上下文查询画布。

我认为这是带有 RoR 的 Jasmine gem 的问题。如果我能解决这个问题,我会很高兴,但这不是我愿意接受的唯一解决方案。即使我实际上并没有直接检查像素数据,我也真的很想帮助想一种有效的方法来集成测试画布。

感谢任何人的帮助,这真的让我陷入困境。