问题标签 [jasmine2.0]
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.
angularjs - Angular/Jasmine 中的测试指令 - 'expect' 不起作用
鉴于此指令:
使用此模板dir1.html
:
我正在尝试使用以下方法进行单元测试:
在测试中,我试图检索类属性的值和 span 元素中文本的内容,但我得到:
我究竟做错了什么?
testing - 如何将浏览器内置变量重新定义为某个值以测试模块?
我如何使用 Jasmine 进行测试?
如果我设置 var msie = "MSIE"; 我怎么能测试这个功能?这样我就知道它返回 number ?
我想测试我的代码是否进入 if else 语句,这意味着我需要设置 var msie,但我不知道如何在方法中设置它?
angularjs - 使用 Angular/Jasmine 测试两个已解决的 Promise
我有一个称为返回承诺的服务,以及一个使用不同参数myHttp
调用两次的控制器。myHttp
为了测试控制器,我尝试myHttp
使用 Jasmine spyOn 进行模拟,如下所示:
wherefake
是检索要在myHttp
调用中使用的参数的函数。
问题是我不能声明两次相同的模拟函数。我从 Jasmine 收到以下错误:
错误:呼叫已被监视
如何解决这个测试?这是PLUNK
Javascript:
jasmine - Jasmine:如何测试用户输入?
我写了以下html文件:
我想测试一下,一旦用户单击按钮并给出年龄超过 80 岁,页面就会按预期运行,并且 h1-tag 文本会更改为“你老了”。
我的问题是如何编写 Jasmine 规范来测试此功能?
angularjs - 这个 Angular 服务 Jasmine 测试缺少什么?
在这个 plunk中,我有一个由 Jasmine 测试测试的 Angular 服务。测试显然找不到服务,我明白了
错误:[$injector:unpr ] http://errors.angularjs.org/1.6.1/$injector/unpr?p0=UtilsProvider%20%3C-%20Utils
并且
错误:声明位置
这里有什么问题?
Javascript:
javascript - jasmine-expect 找不到 jest、jasmine v2.x 或 jasmine v1.x
我正在尝试使用jasmine-expect进行单元测试。但是我不断收到错误消息:
jasmine-expect 找不到 jest、jasmine v2.x 或 jasmine v1.x
我已经安装了最新版本的 jasmine。我错过了什么?
包.json
我的代码:
macos - 使用量角器运行 e2e 测试时在不同平台上发生超时
我正在使用量角器执行 e2e 测试,但我不断收到此错误消息:
我已将超时限制增加到 60 秒,但仍然出现此错误。最大的问题是在 mac OS 上运行测试时会发生错误。使用 ubuntu 在虚拟机中运行测试时,所有测试都通过。
VM 和 Mac OS 机器都具有相同版本的所需所有内容,并且两台机器都在 chrome 中运行测试。在编写要在不同操作系统上执行的量角器测试时,我应该记住一些特殊的指导方针吗?
javascript - Jasmine toEqual 失败但打印两个对象是相同的
在这个 Jasmine 测试中,我比较了两个几乎相同的对象,唯一的区别是第二个对象有一个额外的未定义成员。
测试失败,但是打印两个对象JSON.stringify
会产生两个相同的输出。
浏览对象可以发现差异,但是在复杂对象中,这并不容易。关于如何解决这个问题的任何建议?
javascript - 如果在异步函数中调用“期望”,则 Jest 异步测试超时。有时工作。“在指定的超时时间内未调用异步回调”
我正在将 Jest 与 JS 一起使用,并尝试围绕 X-ray JS 库(一个网络抓取工具包)编写测试。以下是测试。这是使用 Jest 18.x 和截至 2017 年 2 月 20 日的最新 X 射线 js。
如果我在测试运行expect().toEqual
上方的回调中删除调用:done()
按原样使用该行,它会超时。result
是一个简单{link: 'string'}
的对象 测试是不进行网络调用。我尝试将超时值更新为 30 秒,但没有成功。
javascript - 如何使用 Jasmine 监视 requireJS 加载的模块?
所以我正在使用 Typescript/RequireJs/Jasmine,并且无法让我的间谍为另一个模块中加载的模块工作。
这是我的规格:
这是文本格式化程序:
在“A 测试”或“B 测试”中,我无法让间谍发挥作用。它总是调用实际的实现和错误。我可以更改它TextFormatter
以允许注入 TextFormatter 的定义,但这感觉不对。
如何让 spyOn 调用在这种情况下工作?