问题标签 [spy]
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 - How to spy a predefined object with sinon.js
I'm trying to spy window.document with sinon.js. What I do is this:
What I expect from this call is this: When document.getElementById is called with the argument "foo" the function must return "bar". What's my error?
If I define getElementById by myself like this I get the expected result:
javascript - 使用带有动态函数绑定的测试间谍的好方法
我使用$.proxy(this, 'methodName')
对象的方法作为 DOM 事件的事件处理程序。
在测试方面,我想使用 JasminespyOn
来监控回调是否被触发。但是,当我开始监视该方法时,侦听器已附加到我的 Object 的构造函数中,为时已晚,并且原始的、未监视的函数已被$.proxy
.
有什么好的方法来解决这个问题?我考虑过的一件事是直接监视原型的方法,但我担心这可能对每个独立于其他测试的测试产生影响。另一种方法是改变我在代码中附加监听器的方式,但这似乎是把婴儿和洗澡水一起扔了。
mockito - 模拟/监视超级类的私人成员
我正在编写junit测试来测试BaseClass
方法。该方法使用超类成员。构造BaseClass
函数调用super(arg1, arg2)
. 在 super(arg1, arg2) 构造函数中,有一个依赖注入器设置了超类的私有成员。当我运行测试时,由于未设置依赖项,因此 super() 抛出异常。我只想模拟 super() 中使用依赖注入设置私有成员的语句。如何处理模拟?
java - mockito 使用 spy 进行更好的预期异常测试
如何进行第三次测试以检查异常消息中是否存在 cause1?我还在前两个测试中列出了缺点。首先是不检查消息,其次需要大量样板代码。
我在 Mockito 中找不到有效的东西,但有些东西看起来是可能的(在语法层面上)和功能。
使用 catchexception 我创建了这样的测试
javascript - 监视不可变的本地方法
我想测试是否window.location.assign
被调用,所以我试图使用spyOn(window.location, 'assign');
,但该方法不可覆盖。
还有其他方法可以用来监视无法覆盖的本机方法吗?
angularjs - 如何存根在对象构造期间调用的控制器方法
refresh()
我有一个 AngularJs 控制器,它在构建时调用它自己的方法。有问题的方法访问单元测试期间不存在的一些模板元素。
在构建控制器时,refresh 方法会导致单元测试失败。由于它所做的工作与测试无关,我想用存根覆盖该方法并简单地测试它是否已被调用。
Jasmine 的 Spy 功能看起来像是要走的路,但我找不到在构造对象之前为它设置一个的方法。我该怎么做?
javascript - 如何测试触发事件后是否调用了函数?
FooView
..中触发了自定义事件
关联的FooController
绑定一个处理程序来处理事件......
为了测试事件处理,我将为Jasmine编写以下测试:
虽然,测试失败..
测试失败是因为事件的执行时间比预期的要长吗?
java - 调用模拟对象的方法时如何验证返回值
使用 Mockito,有没有办法对一个对象进行 spy() 并验证一个对象是否使用指定的参数被调用了给定的 # 次,并且它返回这些调用的预期值?
我想做类似以下的事情:
android - 带有 Mockito 间谍的 Robolectric buildActivity()?
在我看来,使用 Robolectric 的生命周期实用程序(以 开头Robolectric.buildActivity()
)构建 Activity 单元测试和使用 Mockito 间谍监视同一个 Activity 是相互排斥的。
因为buildActivity()
控制 Activity 对象的构造,所以为 Activity 添加 spy 的唯一位置是在调用buildActivity()
. 但是,在事后添加间谍时,间谍无法正常工作。
在监视生命周期方法的副作用时尤其如此,ActivityController
例如create()
,start()
和resume()
. 我认为这是因为 ActivityController 持有对“真实” Activity 对象的引用,而不是后来添加的间谍。
那么有什么方法可以监视正在使用 Robolectric 进行单元测试的 Activity,以便间谍在通过 Robolectric 调用生命周期方法时正常工作ActivityController
?
window - 如何在 Windows 8 中冻结 ahk 窗口间谍
我的 Window Spy 说“Shift-Alt-Tab 冻结显示”但 ShfitAltTab 将所有窗口最小化。如何在 Windows 8 中冻结自动热键的 Window Spy?